В Android API есть способ узнать причину, по которой голосовое соединение не было установлено? - PullRequest
1 голос
/ 25 марта 2012

Я хотел бы знать, если причина, по которой голосовое соединение (при телефонном звонке) не было установлено, вызвано тем, что был сигнал "занято" или другая сторона не ответила на вызов.

Есть ли API для получения этой информации?Если ответ «нет», я хотел бы знать, предоставляется ли эта информация аппаратным обеспечением / драйверами GSM вообще?

1 Ответ

0 голосов
/ 25 октября 2012

Даже если бы вы могли запросить подробности сообщения о разъединении (а я не верю, что вы можете с текущими Android API), вы все равно будете полагаться на различные коммутаторы / протоколы / операторы в окончательном сопоставлении соединений причины разъединения возвращаются точно, что может быть не надежно на 100%, особенно на международных звонках и в старых сетях.

Если вам просто требуется подход, который, как правило, будет правильным, а не правильным в 100% случаев, тогда вы сможете основывать его просто на времени, которое требуется для возвращения сообщения об отключении. Другими словами, если это занимает много времени, это, скорее всего, произойдет из-за истечения времени ожидания вызова, когда кто-нибудь ответит.

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

...