Ainda não é um programa, e muito menos um método muito prático para isso….mas já é alguma coisa e meio caminho andado para que um programa seja criado (o que eu aposto que não vai demorar muito).
Esta é a receita de bolo (observação: sempre que estiver escrito “no terminal”, o procedimento também pode ser feito via SSH).
1- é necessário ter acesso de root no aparelho
2- se você não tem nenhuma aplicação em Python instalada no aparelho, é necessário instalar o maemo-python-device-env, que está no extras-devel (para saber se tem o Python, abra o terminal e digite “python”…se der algum erro, é porque não o tem).
3- baixe este arquivo. Dentro do zip há um arquivo chamado “callblock.py”. Ao abrí-lo num editor qualquer, isso aparecerá (portanto nem precisa baixar o arquivo, basta copiar daqui, se for o caso):
#! /usr/bin/python import gobject, dbus from dbus.mainloop.glib import DBusGMainLoop def handle_call(obj_path, callernumber): global blocklist print "number called: %s" % callernumber for number in blocklist: if number.replace("\n","") == callernumber: print 'I have to block %s' %callernumber bus = dbus.SystemBus() callobject = bus.get_object('com.nokia.csd.Call', '/com/nokia/csd/call/1') smsiface = dbus.Interface(callobject, 'com.nokia.csd.Call.Instance') smsiface.Release() blocklist = ["+918067337555","+918067348300","+918066167590"] DBusGMainLoop(set_as_default=True) bus = dbus.SystemBus() bus.add_signal_receiver(handle_call, path='/com/nokia/csd/call', dbus_interface='com.nokia.csd.Call', signal_name='Coming') gobject.MainLoop().run()
4- agora edite a variável blocklist, de forma a colocar os números que você quer bloquear. Para colocar mais números, basta inserir uma vírgula, e o número entre aspas….do mesmo jeito que está agora.
5- salve e transfira o arquivo para o N900 (caso a edição tenha sido feita fora dele), para o diretório “/home/user/MyDocs”.
6- abra o terminal do aparelho, e como root execute este comando:
python /home/user/MyDocs/callblock.py &
Observação: o “e comercial” (&) é muito importante!! É ele que vai fazer com que o programa continue rodando mesmo depois que fechar o terminal.
Observação 2: fiz uma pequena alteração no programinha para que ele exiba o número de quem está chamando. Para que seja possível ver o número é necessário que o terminal onde o programa foi iniciado não seja fechado.
E pronto!!!! Já temos uma lista de bloqueio de chamadas! Para incluir novos números basta editar o arquivo de novo, parar o programa e iniciá-lo outra vez. Sempre que o aparelho for reiniciado, é necessário rodar o programa novamente, de forma manual.
Agora uma pergunta muito importante: como parar o programa, se ele está rodando em segundo plano?? Simples! Abra o terminal, e digite este comando:
ps -ef | grep callblock
Ele vai retornar uma linha mais ou menos assim:
9553 root 9944 S python callblock.py
O que nos interessa é o primeiro número, que no caso é 9553. Como root, digite isso:
kill -9 número_da_primeira_coluna
E o programa será terminado.
Eu tenho quase certeza que logo logo surgirão aplicativos mais completos, e inclusive com recursos mais interessantes, como por exemplo somente permitir chamadas de quem estiver na sua lista de contatos.
fonte: Maemo Central, via news do Maemo.org