Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > 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 |
это JSR 253 чтоли? а у кого он есть? В https://developer.sonyericsson.com/getDocument.do?docId=97267 JP-8 его еще нет. В нокиях тоже нет. А если у них нет, то у кого может быть? ![]() Так что только 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 обойтись без подтверждения вызова ? Есть ли какие-то другие средства, при помощи которых можно осуществить автодозвон? |