Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java ME (J2ME) > Как программно осуществить звонок?


Автор: Legislative 5.8.2008, 05:02
Подскажите, как программно осуществить звонок из мидлета? Из просмотренных источников нашел варианты - вызов platformRequest, использование Wireless API, использование JTAPI. Но точного ответа не увидел.

Это нужно для установки соединения с модемом и дальнейшей передачи данных. Какие могут быть варианты?

Автор: Dummy 5.8.2008, 12:06
Звонок делается через platformRequest со схемой "tel". Но эта штука только инициирует звонок, дальнейшего контроля над передаваемыми данными она не дает.

WMA вообще к звонкам отношения не имеет.

Можно описать подробнее задачу - зачем нужно куда-то именно звонить, а не общаться с девайсом через COM-порт или через сокеты?

Автор: Legislative 5.8.2008, 12:35
Есть необходимость в следующем - помимо инета (т.е использования сокетов или еще чего) нужно реализовать возможность связи телефон-телефон как между 2-мя модемами (на случай отсутствия подключения).

Т.е. 1-й телефон дозванивается ко 2-му, идет соединение, далее 1-й передает порцию данных, потом 2-й отвечает тоже порцией данных, соединение разрывается.

Как это можно реализовать?

Автор: W0LF 5.8.2008, 12:47
Нельзя никак! platformRequest делает вызов, звонок не контролируешь

Автор: Legislative 5.8.2008, 13:04
А можно использовать что-то наподобие TAPI? Ведь вроде есть JTAPI.

Автор: Legislative 5.8.2008, 14:27
Контролировать и управлять можно - есть Mobile Telephony API (MTA). Но передават данные с помощью MTA к сожалению нельзя.

Автор: eugine_s 5.8.2008, 14:49
Цитата(Legislative @  5.8.2008,  14:27 Найти цитируемый пост)
Mobile Telephony API (MTA).


это JSR 253 чтоли? 

а у кого он есть? В https://developer.sonyericsson.com/getDocument.do?docId=97267 JP-8 его еще нет. В нокиях тоже нет.
А если у них нет, то у кого может быть? smile


Так что только platformRequest() и никакого контроля звонка - если звонить. Ну или что-то с портами делать.


Автор: Legislative 5.8.2008, 15:02
Да, это JSR 253.

С портами делать - т.е. телефоны связывать друг с другом напрямую и передавать/принимать (что не подходит) или есть возможность работать с аппаратным обеспечением телефона каким-то универсальным способом?

А можно сделать нечто подобное:

StreamConnection commConn = (StreamConnection)Connector.open("tel://+4444444444", Connector.READ_WRITE,true); 
InputStream iStream = commConn.openInputStream(); 
OutputStream oStream = commConn.openOutputStream(); 

и пытаться передавать/принимать? На самом деле для меня не главное, какой телефон использовать, лишь бы он был дешевый и поддерживал MIDP.
Пока не могу проверить, но может кто делал нечто подобное.

Автор: W0LF 5.8.2008, 15:44
Нельзя

Автор: Dummy 5.8.2008, 16:17
Можно передавать данные через цепочки смсов, если, конечно, данных не очень много. В каждой смске можно будет послать до 140 байт. Понадобится только соответствующим образом упаковывать данные, а WMA первой версии многие телефоны, даже далеко не топовые, поддерживают.

Автор: Legislative 5.8.2008, 16:51
СМС тоже не вариант. Подумаю еще.

Добавлено через 2 минуты и 13 секунд
Операторы моб. связи ведь придлагают услугу пердачи данных CSD. А это ни что иное как модемное соединение в принципе. И платишь ты там за время.

Автор: CHEM_Eugene 22.10.2008, 19:57
А где-нибудь реализована поддержка JSR 253?

Можно ли при помощи platformRequest обойтись без подтверждения вызова ? 

Есть ли какие-то другие средства, при помощи которых можно осуществить автодозвон?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)