Android'de dtmf sinyalinin kodunu çözme. Android cihazlarda DTMF Geri Arama telefon fonksiyonunun kullanımını kolaylaştıracak bir uygulamanın çalışan bir prototipinin geliştirilmesi

10.09.2021

İyi çalışmanızı bilgi tabanına göndermek basittir. Aşağıdaki formu kullanın

Bilgi tabanını çalışmalarında ve çalışmalarında kullanan öğrenciler, lisansüstü öğrenciler, genç bilim insanları size çok minnettar olacaklardır.

Yayınlanan http://www.allbest.ru/

giriiş

Dünyada bilimsel ve teknolojik ilerlemenin gelişmesi, 21. yüzyılın başında yaygınlaşmanın hızlı bir şekilde yayılmasına katkıda bulundu. hücresel iletişim Bunun nedeni, sabit telefonla iletişimin mümkün olmadığı yerlerde, sürekli erişim alanında bulunma ihtiyacından kaynaklanmaktadır.

Piyasadaki fiyatların düşme eğilimi sayesinde neredeyse her Rusya vatandaşının kendi kişisel eşyalarına erişimi var. cep telefonu.

Birçok telekom operatörü hücresel hizmetler sunmaktadır. İnternet teknolojilerinin gelişmesi sayesinde, IP telefonu, geleneksel hücresel telefona göre bir takım avantajlara sahip olan popülerlik kazanmıştır; örneğin, bir konuşmanın dinlenmeye karşı korunması veya bir sunucuya bir konuşmanın kaydedilmesi, kısa numaraların kullanılması ve olmadan iletişim. sağlayıcıların katılımı.

VoIP sunucusu ile cep telefonu arasında iletişim kurmanın birkaç yolu vardır. En bariz olanlardan biri, genellikle hücresel operatöre ödeme yapmanız gereken İnternet bağlantısıdır; bu, VoIP için İnternet iletişimini kendi telefon hizmetlerinden daha ucuz hale getirmek için özellikle karlı değildir. Bu nedenle, IP telefon yoluyla yapılan aramalar için gerekli olan sabit İnternet tarifesinin fiyatları şişirilebilir.

Sunucuya hangi numarayı arayacağı söylendiğinde ve sunucu aboneyi geri arayarak abonenin aradığı numaraya bağlanarak, genellikle geri arama adı verilen bir VoIP sunucusuyla iletişim kurmanın bir yolu vardır. Bu numara İnternet, SMS veya tonlu arama (DTMF) yoluyla iletilebilir.

Özellikle abone dolaşımdaysa, SMS göndermek veya İnternet'i kullanmak her zaman mümkün değildir. Çoğu zaman tek kişi uygun fiyatlı yol iletişim hücresel iletişimi kullanan “geleneksel” bir çağrıdır. VoIP sunucusuyla hücresel arama yoluyla iletişim kurmanın bir yolu vardır; bunun için DTMF Geri Arama aşağıdaki algoritma kullanılarak kullanılır:

1. “A” abonesi telefon sunucusu numarasını arar

Şekil 1. Adım 1

2. Telefon sunucusunun bağlantısı kesiliyor

Şekil 2. Adım 2

3. Telefon sunucusu “A” abonesini geri arar ve yanıt bekler.

Şekil 3. Adım 3

4. Abone “A” çağrıya cevap verir

Şekil 4. Adım 4

5. Tonlu aramada “A” abonesi “B” abonesinin numarasını çevirir.

Şekil 5. Adım 5

6. Sunucu “B” abonesine bir çağrı başlatır

Şekil 6. Adım 6

7. Başlatma işleminden sonra sunucu, "A" abonesi ile "B" abonesinin bağlantısını ilişkilendirir. “A” abonesi zaten “B” abonesinin çevir sesini duymaktadır.

Şekil 7. Adım 7

Abone “B” çağrıya cevap verir. Her iki kullanıcı da sesli mesaj alışverişinde bulunabilir.

Şekil 8. Adım 8

Sonuç olarak, "A" abonesi ve "B" abonesi performans sergiliyor gelen çağrı ve telefon sunucusu aracılığıyla birbirleriyle iletişim kurabilirler.

Geri Aramadan farklı olarak sunucunun "A" abonesini geri aramasını gerektirmeyen, ancak bununla bağlantılı olarak "A" abonesinin geri aramasını gerektirmeyen bir Callthrough yöntemi vardır. Giden arama.

Gelişimin temeli

DTMF kullanarak geri aramayı başlatmanın ana dezavantajı, “A” abonesinin, sunucu onu geri aradıktan sonra “B” abonesinin numarasını manuel olarak çevirmek zorunda olmasıdır. “A” abonesinin telefonundaki arama kaydında, aradığı numara yani sunucu numarası giden aramalarda, onu geri arayan geri arama numarası ise gelen aramalarda kalır. Bu bilgi kullanıcı için pek bilgilendirici değildir. Telefon sunucusu, "A" abonesinin farklı numaralardan geri aranmasını sağlayacak şekilde yapılandırılabilir. Bu, kullanıcının arama kaydında bulunacağı anlamına gelir. çok sayıda bilinmeyen numaralar Bu bilgiler gereksizdir ve aboneden gizlenmelidir. Çoğu zaman, geri arama servislerinin DTMF aracılığıyla doğrudan erişimi yoktur, ancak bir İnternet bağlantısı, SMS veya özel bir SIM kart kullanılır.

Gelişimin amacı

Android cihazlarda DTMF geri arama telefon fonksiyonunun kullanımını kolaylaştıracak bir uygulamanın çalışan bir prototipini geliştirin.

İnceleme ve analitik bölüm

hücresel

Hücresel - kablosuz bağlantı erişim bölgeleri peteklere benzer şekilde altıgen hücrelere bölünmüştür. Böyle bir erişim bölgesi baz istasyonu tarafından sağlanır. Hücre bölgelerini oluşturan bu tür baz istasyonları kümesine hücresel ağ denir; hücresel ağı kullanan cihazlara cep telefonları denir. İÇİNDE hücresel ağ Her hücre, paraziti önlemek ve her hücreye garantili verim sağlamak için komşu hücrelerden farklı bir frekans seti kullanır.

Hücresel ağ özellikleri:

· Birden fazla baz istasyonunun kullanılması, tek bir büyük vericinin kullanılmasından daha fazla seçenek sağlar. Her hücreye karşılık gelen çeşitli frekanslar atanabilir Baz istasyonu. Komşu hücrelerin farklı frekanslar kullanması durumunda bir grup frekans yeniden kullanılabilir.

Şekil 9. Frekansın yeniden kullanım şeması (F1-F4 - frekanslar)

· Mobil cihazlar kuleyle iletişim kurmak için daha az enerji ayırın, böylece iletişim kulesinin daha yakın konumu nedeniyle onu bulmak için ne kadar daha az güçlü bir sinyale ihtiyaç duyulur?

· Tek bir karasal vericiden daha geniş kapsama alanı, dolayısıyla sinyalin parazit nedeniyle iyi ulaşamadığı, zayıf iletişimin olduğu alanlara ek baz istasyonları eklenebilir.

Hücreleri düzenlerken hücre alanlarının üst üste binmesini önlemek en uygunudur; hücreler arasında boş alan olmamalıdır. Bu nedenle kaplamanın geometrik şekli üçgen, kare veya altıgen gibi şekiller olabilir. Anten kapsama alanının şekli en çok altıgene benzer.

Sinyalleri bir cep telefonundan diğerine yönlendiren ve yönlendiren cihazlara otomatik telefon santralleri (PBX'ler) adı verilir. Şu anda neredeyse tüm otomatik telefon santralleri elektroniktir.

Çevirici, PBX'in bağlanması gereken telefonun numarasını iletmenizi sağlayan telefon arayüzünün bir parçasıdır. Uzun bir süre, her rakamın kendi darbe sayısına karşılık geldiği darbeler üreten darbe çeviriciler kullanıldı. telefon 10 delikli bir disk vardı. PBX'e bağlanma prensibi aşağıdaki gibidir:

Telefonda, yayı saran, belirtilen sayıdaki noktadan bir disk döndürülür. Disk serbest bırakıldığında yay gevşemeye başlar ve disk ters yönde hareket etmeye başlar. Bir darbenin çevrilmesi telefon hattının kapanmasına ve açılmasına karşılık gelir. Bir karakter kümesini diğerinden ayırmak için darbe kümeleri arasında duraklamalar yapılır. Bu çevirme yöntemi oldukça sakıncalıdır, abonenin diski birkaç kez çıkarması ve yerine dönmesini beklemesi gerekir. Daha sonra, bu dezavantajı ortadan kaldıran bir darbeli düğme kadranı ortaya çıktı.

Şu anda bir numarayı çevirmek için iki tonlu çoklu frekans sinyali (Çift Tonlu Çoklu Frekans, DTMF) kullanılıyor. DTMF dahili komutlar için kullanılabilir telefon ağı. DTMF'de iletilen rakam, belirli bir frekanstaki iki sinüzoidal voltajın toplanmasıyla elde edilen bir sinyalle kodlanır. Her grupta dört ses frekansından oluşan iki grup kullanılır.

Tablo 1. DTMF araması için frekans ve simgelerin yazışmaları

Doğrudan Dahili Sistem Erişimi (DISA), bir abonenin telefondan gelen DTMF sinyallerini kullanarak bir telefon santralini veya telefon sunucusunu kontrol etmek için erişim kazanmasına olanak tanıyan bir doğrudan erişim işlevidir.

Hücresel pazara genel bakış

Rusya'da hücresel iletişim sağlayan şirketlerin gelirleri, raporlarından da anlaşılacağı üzere artıyor.Aynı raporlar, gelirlerin büyük bir kısmının mobil iletişimden geldiğini gösteriyor. Mobil iletişim maliyetlerini azaltmak hem ortalama özel kullanıcının hem de kurumsal oyuncunun çıkarınadır. Bunun bir yolu, aylık olarak kullanılan hizmetleri analiz etmek ve bir mobil operatörden en uygun tarifeyi seçmektir.

Moskova'daki mobil iletişim pazarı, dağılımı şu adreste görülebilen üç oyuncudan oluşuyor:

Diyagram 1: Hücresel pazardaki büyük oyuncuların dağılımı

Karşılaştırmak Moskova'da yerel tarifeler

Moskova pazarındaki üç büyük oyuncunun karşılaştırılabilecek benzer paket tarifeleri var. Örneğin, MTS için “Akıllı” sınıf tarifeleri, Megafon için “Her Şey Dahil” ve Beeline için “Her Şey” tarifeleri. Bu tarifeler bir seçenek paketi sunar ve abonelik ücreti onlar için. Bu sınıflardaki benzer fiyatlı tarifeleri karşılaştıralım. Hizmet paketleri SMS, MMS, İnternet ve diğer hizmetleri içerebilir ancak aramanın fiyatıyla ilgilendiğimiz için bu analizde bunlar dikkate alınmaz. Aynı sebepten dolayı hayır Detaylı Açıklama Tarifelerin nüansları, fiyatı doğrudan etkilemezlerse, bölgenin farklı alanlarındaki iletişim kalitesinin operatörler arasında büyük farklılıklar gösterebileceğini fark edebilirsiniz. Aylık tarife limitinin aşılması durumunda arama ücretini hesaplamaya da gerek yoktur, çünkü maliyetleri kontrol eden kişi tarifeyi doğru seçecektir ancak limit aşıldıktan sonra fiyatın oldukça yüksek olabileceğini belirtmekte fayda var. Rusya içerisinden gelen aramaların her üç paket grubu için de ücretsiz olduğunu belirtmekte fayda var.

Minimum fiyat “Smart mini” - 200?, “Herşey Dahil XS” - 199? paket tarifeleridir. ve "Hepsi 200'e" - 200?. Operatörün şebekesi içindeki aramalar için bazı özellikler vardır. “Akıllı mini” ve “Her şey dahil XS” Rusya genelinde, “Hepsi 200'e” ise yalnızca Moskova ve Moskova bölgesinde arama yapıyor. Fiyatlar 15 Mayıs 2015 tarihi itibarıyla belirtilmiştir.

Tablo 3. Minimum paket fiyatları

Tablodan da anlaşılacağı üzere tarife seçenekleri oldukça benzerdir. Ağ içindeki aramalar en ucuz olanıdır. Diğer operatörlerin abonelerinin özellikle Moskova bölgesi dışında arama yapması daha pahalıdır.

Her ne kadar bu tarife diğer ülkelere yapılan aramalara yönelik olmasa da kişinin kendi ülkesinin dışına arama yapması gerekebileceğinden, diğer ülkelere yapılan aramalarda uluslararası tarifeleri dikkate almakta fayda var.

Tablo 4. Minimum paket ücretleri (yurt dışı aramalar)

BDT, dakika başına ruble

24 Ayrıca Kırım Cumhuriyeti ve Sivastopol şehri için

Avrupa, dakika başına ruble

Diğer ülkeler, dakika başına ruble

ABD, dakika başına ruble

Kanada, dakika başına ruble

Avustralya ve Okyanusya, dakika başına ruble

Asya, dakika başına ruble

Ağ içindeki BDT, dakika başına ruble

Kuzey ve Orta Amerika (ABD ve Kanada hariç), dakika başına ruble

Tablodan da görülebileceği üzere tarifeler Diğer ülkelere yapılan çağrılar zaten oldukça farklı. Beeline, diğer ülkelerdeki Beeline numaralarını düşük bir fiyata arama fırsatı sunar. Megafon'un farklı ülkeler için daha fazla fiyat farkı varken, MTS'nin ise tam tersine Avrupa için tek, diğer tüm ülkeler için tek fiyatı var.

Tablo 5. Küçük paket tarifeleri

Asgari paket fiyatlarında olduğu gibi koşullar çok benzer ancak fiyat farklıdır.

“Akıllı” paketler için diğer ülkelere yapılan aramaların MTS fiyatları, Megafon’un “Her Şey Dahil” paketleri için olduğu gibi farklı değildir, ancak Beeline’ın “Her şey için” paketlerinin yurt dışında biraz farklı fiyatları vardır:

· “Hepsi 400'e” tarifesinde: “Hepsi 200” koşulları + BDT ülkeleri, Kırım ve Sivastopol'u ararsanız günde ilk 10 dakikanın ücreti 5?

· “Hepsi 600’e” tarifesinde: “Hepsi 400” koşulları + Azerbaycan, Belarus ve Moldova’yı ararsanız günlük ilk 10 dakika ücreti 7?

· “Hepsi 900’e” tarifesinde: “Hepsi 600” koşulları + Avrupa, ABD ve Moldova’yı ararsanız günde ilk 10 dakika ücreti 5?

· “Hepsi 1500'e” tarifesinde: “Hepsi 900” koşulları + Maldivler, Madagaskar, Burundi, Kuzey Kore, Papua Yeni Gine, Seyşeller, Somali, Tokelau, Tunus'a bir dakika 55 mi?

Tablo 6. Ortalama paket fiyatları

Eşit yerel tarifelerle Megafon'un Rusya'daki diğer operatörlere yapılan aramaların fiyatı 3,3 kat daha ucuz.

Tablo 7. Ortalamanın üzerindeki tarife paketleri

Eşit yerel tarifelerle, Rusya'daki diğer operatörlere MTS'den yapılan aramaların fiyatı 3,3 kat daha ucuz.

Tablo 8. Büyük tarife paketleri

Bu yerel tarifeler hemen hemen aynı koşullara sahiptir.

Çözüm

Paket tarifeler şebeke içi aramalarda kullanıldığında oldukça avantajlıdır. Rakip operatörler fiyatları yaklaşık olarak aynı seviyede tutuyor. Günde 20-60 dakika konuşan sıradan bir abone için bu tarifeler uygundur. Bir kişinin günde 120 dakikadan fazla konuşması gerekiyorsa, o zaman 1500'den 2500'e kadar daha pahalı tarife paketleri almak zorunda kalacak ki bu zaten oldukça pahalı.

İçin Uluslararası dolaşım Birbirinden farklı koşullar var. Bu dolaşım her üç operatör için de pahalıdır; otuz dakikalık bir konuşma, hizmet paketinin maliyetini aşabilir. Abonenin başka ülkeleri araması gerekiyorsa farklı bir tarife seçmeye değer.

Diğer ülkelere yapılan aramalar için tarifeler

Diğer ülkelere yapılan aramalara ilişkin tarifeler üç gruba ayrıldı:

1. Turistlerin akrabaları ve arkadaşları için tarifeler

2. Göçmenlere yönelik tarifeler

3. İşadamlarına yönelik tarifeler

Turistlerin akrabaları ve arkadaşları için tarifeler

Turistlerin akrabalarına ve arkadaşlarına yönelik tarifeleri karşılaştırmak için beş popüler tatil yeri alındı::

1. İspanya

Bir turistin tüm seyahat boyunca sabit hatlı bir telefonun yanında oturması pek mümkün olmadığından, bu tür yönlere yapılan aramalar yalnızca cep telefonuna arama yapılırken dikkate alınır.

MTS'nin “Karlı” tarife seçeneği var Uluslararası aramalar". Aylık abonelik ücreti 50? Bu beş yöne yapılan aramaların dakikası 10 rubleye mal olacak. Tarife seçeneği “Akıllı” gibi diğer tarifelerle uyumludur.

Beeline'ın "Hoş Geldiniz" tarifesi var. Bu tarifeye geçişin maliyeti 150?, tarifenin aylık abonelik ücreti yok ama günlük 4,45? Tarifeye dahil olan seçenekler için. Türkiye'ye arama ücreti 6 mı? Bir dakika içinde. Ne yazık ki, beş turistik ülkenin diğerlerine dair bilgi yok. Bağlantıyı takip eden tarife sayfasında:

http://moskva.beeline.ru/customers/products/mobile/tariffs/details/dobro-pozhalovat/

Şekil 10. Beeline “Hoş Geldiniz” tarife sayfasından alanın ekran görüntüsü

Adrese yönlendiren bir geçiş:

http://moskva.beeline.ru/customers/products/mobile/roaming/roaming-new/

Sayfa arayüzü üç köprü içerir.

Şekil 11. “Dolaşım, uzun mesafe ve uluslararası iletişim” sayfasının arayüzü

"Dünyayı dolaşırken dolaşım", "Rusya'yı dolaşırken dolaşım" ve "Evden diğer şehirlere ve ülkelere yapılan aramalar". Açıkçası, diğer ülkelere yapılan aramaların fiyatları üçüncü köprüde yer almalıdır. Bu bağlantıdaki sayfa, Beeline sunucusundan bilgi istemek için bir arayüz sağlar.

Şekil 12. “Hoş Geldiniz” tarifesi ile “Kıbrıs” talebi sonrası “Evden diğer şehir ve ülkelere yapılan aramalar” sayfasından ekran görüntüsü

Örneğin Kıbrıs için fiyatı kontrol ederseniz, Kıbrıs fiyatları yerine genel tarife koşulları belirtilecektir. Kıbrıs'a özel bir koşul olmayacak. “Diğer ülkelere yapılan aramalar” bölümünde “Tarifelere göre” adlı bir köprü bulunmaktadır. uluslararası iletişim» adresiyle birlikte:

http://moskva.beeline.ru/customers/products/mobile/roaming/

Daha önce gösterildiği gibi bu bilgi mevcut değildir.

Bilginin kasıtlı olarak mı gizlendiği yoksa bunun bir arayüz tasarımı hatası mı olduğu sonucuna varmak zordur. Şu anda Beeline temsilcilerinden mantıklı bir açıklama alamadım, bu nedenle resmi bilgi olmadan Beeline tarifelerini karşılaştırmanın imkansız olduğunu düşünüyorum.

Megafon, diğer ülkelere yapılan aramalarda “Tüm ülkelere arama” seçeneğini sunuyor.İlk 30 gün 60€, sonrasında günlük 2€ ücret alınıyor. bir günde. İtalya, İspanya, Kıbrıs ve Yunanistan'a yapılan aramaların ücreti 6 mı? dakikada ve Türkiye'ye 8? Bir dakika içinde.

Göçmenler için tarifeler

Göçmenlere yönelik tarifelerde BDT ülkeleri ve komşu ülkeler için fiyatlar dikkate alınmaktadır.

“Karlı uluslararası aramalar” seçeneğindeki MTS, BDT'ye (Azerbaycan ve Beyaz Rusya hariç) 15? dakika başına ve Azerbaycan ve Beyaz Rusya'ya 20 fiyatla? Bir dakika içinde.

Beeline'ın “Hoş Geldiniz” tarifesinde Tacikistan'a özel koşulları bulunuyor. Beeline numaralarına yapılan aramalar için 1 dakika - 7?, sonraki dakikalar 1?. Ermenistan, Kazakistan, Kırgızistan'daki Beeline numaralarına ve Ukrayna'daki Kyivstar numaralarına yapılan aramalar için - 2,5 ? Bir dakika içinde. Tacikistan, Ermenistan, Ukrayna, Kazakistan, Kırgızistan'daki diğer numaraların yanı sıra Türkmenistan'daki diğer numaraları aramak için - 7? Bir dakika içinde. Azerbaycan ve Belarus'a aramanın ücreti 13 mü? Bir dakika içinde. Özbekistan Beeline'a - 3 numara mı? dakikada kalan 4? Bir dakika içinde.

“Tüm ülkeleri ara” seçeneğinde Megafon'dan Azerbaycan ve Belarus'a yapılan aramaların ücreti 15? dakikada Ukrayna'ya - 10? dakikada Ermenistan, Kazakistan ve Kırgızistan - 8? dakikada Tacikistan ve Türkmenistan'a - 6? dakikada Özbekistan'a - 5? Bir dakika içinde. Megafon'un ayrıca Tacikistan'a özel “Tacikistan+” seçeneği de bulunuyor. Konuşmanın ilk dakikası 7?, 20. dakikaya kadar dakikası 1? ve 21. dakikadan itibaren 7?'dir.

İşadamları için tarifeler

Bir işadamının herhangi bir ülkeyle iletişim kurma ihtiyacı olabilir. Bu incelemenin amacı, farklı tarifeler için fiyat seviyelerini karşılaştırmak ve tüm ülkeler için tam bir fiyat karşılaştırması oluşturmak değil, bu nedenle bir iş adamının arayabileceği 5 ülke seçildi.

3. Almanya

5. İngiltere

“Faydalı Uluslararası Aramalar” seçeneğindeki MTS, Çin'e 1,5? dakika başına, ABD 5? Dakikada Almanya ve Büyük Britanya 10? dakikada Japonya'ya 25'e mi? Bir dakika içinde.

Beeline'ın "Hoş Geldiniz" tarifesi Çin'e 2 kişilik aramalar sunuyor? Bir dakika içinde.

“Tüm ülkeleri ara” seçeneğindeki Megafon, Çin'e 1? dakika başına, ABD 4 ? dakikada Almanya saat 6'da mı? dakikada, İngiltere saat 11'de mi? dakikada Japonya'ya 9'da mı? Bir dakika içinde.

Çözüm

Değerlendirilen turistik destinasyonlar için en karlı seçenek Megafon’un “Tüm ülkelere arama” seçeneğidir. Beeline'da yeterli veri yok.

Göçmenler için düşünülen bölgelerde Beeline ve Megafon'un fiyatları rekabet ediyor, MTS en pahalısı.

İşadamları için düşünülen alanlarda MTS ve Megafon fiyatları rekabet ediyor, Beeline için yeterli veri yok.

Roaming

Birçok operatör, başka bir operatörün ağına bağlanmak için operatörünüzün SIM kartını kullanmanın mümkün olduğu dolaşım hizmetleri sağlar. Uzun mesafe ve uluslararası dolaşım vardır. Abone trende seyahat ediyorsa uzun mesafeli dolaşıma ihtiyaç duyulabilir. Böyle bir abone, haritadaki konumunu hızlı bir şekilde değiştirebildiğinden, seyahat ettiği her nokta için yerel bir operatörden yerel bir SIM kart satın alamamaktadır.

Uluslararası dolaşım genellikle uzun mesafeli dolaşımdan daha pahalıdır.

MTS, uluslararası dolaşım için “Sınır Tanımayan Sıfır” hizmetini sunmaktadır. Bu hizmetin abonelik ücreti 60 mı? bir günde. Bazı destinasyonlarda ilk 10 dakika boyunca gelen aramalar ücretsiz olabilir ancak aylık 200 dakika sınırı kullanıldıktan sonra her gelen aramanın ücreti 25? Bir dakika içinde.

Yunanistan, Almanya ve Türkiye için “Ücretsiz Seyahat” hizmetini kullanmak daha karlı olacaktır. Abonelik ücreti 100 mü? bir günde. Hizmet, Rus numaralarına gelen ve giden aramalar için günde 60 dakika sunuyor.

Tablo 9. Turistik destinasyonlara göre “Sınır Tanımayan Sıfır”ın fiyatı

Büyük olasılıkla göçmenlerin yerel tarifeler alması zor olmayacak, dolayısıyla bu alan BDT ülkeleri için ayrı olarak ele alınmayacak.

İşadamları için her zaman aynı numaradan iletişim halinde olmak önemlidir, bu nedenle SIM kartı yerel bir kartla değiştirmeyi kabul etmeleri pek olası değildir.

Şekil 13. “Sınır Tanımayan Sıfır”ın iş yönüne göre fiyatı

Almanya

Büyük Britanya

Gelen çağrılar (ilk 10 dakika), dakika başına ruble

Gelen çağrılar (11 dakikadan itibaren), dakika başına ruble

Rus numaralarına giden aramalar (1 dakika ve 6 dakikadan başlayarak), dakika başına ruble

Rus numaralarına giden aramalar (2 ila 5 dakika arası), dakika başına ruble

Ana ülke numaralarına giden aramalar, dakika başına ruble

Diğer ülkelerdeki numaralara yapılan aramalar, dakika başına ruble

Uluslararası dolaşım için Beeline “Gezegenim” hizmetini sunmaktadır. Hizmete bağlanmanın maliyeti 25?. Tüm turistik yerlere gelen aramaların ücreti 15 mi? Dakika başına, herhangi bir ülkeye giden ve ev sahibi ülke içindeki 25? Bir dakika içinde. Japonya hariç, komşu ülkeler ve daha önce belirtilen iş yönleri için aynı fiyatlar, hangi gelen 19 için? dakikada ve giden 49 dakikada.

Uluslararası dolaşım için Megafon iki seçenek sunar: "Tüm dünya" ve "Dünyanın her yerinde". "Bütün dünya", 39 € abonelik ücretiyle günde 30 dakika ücretsiz gelen aramalar sunuyor? vuruşlara. "Dünyanın Her Yerinde" 15 kişilik mi bağlanıyor? ve günlük abonelik ücreti 9? Avrupa ve BDT, Türkiye, Abhazya ve Güney Osetya'dan gelen ve giden aramaların ücreti 6 mı? dakika başına, Japonya için 9? ABD ve Çin için dakikada 36? Bir dakika içinde. Megafon, Rusya'ya yapılan aramalar için Geri Arama'yı kullanıyor.

Çözüm

Uluslararası dolaşımda diğer tarifelerden farklı olarak ücretli gelen arama olabilir, fiyatlar 200'e ulaşabilir mi? Bir dakika içinde.

Pazar İncelemesi VoIP iletişimi

Hücresel operatörlerin yanı sıra IP Üzerinden Ses (VoIP) telefon hizmetleri sağlayan operatörler de bulunmaktadır. Bu bağlantının temel farkı, aboneleri birbirine bağlamak için İnternet'in kullanılmasıdır. Bazı şirketler çeşitli VoIP hizmetleri sunmaktadır; genellikle bir VoIP şirketinin iki veya daha fazla abonesinin İnternet üzerinden bağlantısı ücretsizdir. Bu tür hizmetler Skype, Hangouts, Viber ürünleri tarafından sağlanmaktadır.

VoIP yalnızca İnternet üzerinden değil aynı zamanda hücresel ağ üzerinden de iletişim kurabilir. Bunun için GSM-VoIP ağ geçitleri kullanılır. VoIP sunucusu için, En Düşük Maliyetli Yönlendirmeyi yapılandırabilirsiniz - numaraya bağlı olarak arama için otomatik rota seçimi. Sunucu, ağa erişim için en uygun tarifeyi kendisi seçer ve dolayısıyla iletişim maliyeti düşer.

VoIP fiyatları döviz kuruna bağlı olabilir veya başka bir para biriminde belirtilebilir, karşılaştırma amacıyla tüm fiyatlar Rusya Federasyonu Merkez Bankası'nın web sitesinde 26 Mayıs 2015 itibarıyla belirtilen döviz kuru üzerinden rubleye dönüştürülecektir. bu tarihe ait oran:

Tablo 10. 26 Mayıs 2015 itibarıyla döviz kurları

Skype, Kıbrıs cep telefonu numaralarına yapılan aramalar için aşağıdaki tarifeleri sunmaktadır:

Tablo 12. Kıbrıs'a yapılan aramalar için Skype fiyatları

Skype, Türk cep telefonu numaralarına yapılan aramalar için aşağıdaki tarifeleri sunmaktadır:

Tablo 13. Türkiye'ye yapılan aramalar için Skype fiyatları

Skype, ABD cep telefonlarını ve sabit hatlarını aramak için aşağıdaki tarifeleri sunar:

Tablo 14. ABD'ye yapılan aramalar için Skype fiyatları

Skype, Japonya'daki cep telefonu numaralarına yapılan aramalar için aşağıdaki tarifeleri sunar:

Tablo 15. Japonya'ya yapılan aramalar için Skype fiyatları

SkypeÇin'de cep telefonlarına ve sabit hatlara yapılan aramalar için aşağıdaki tarifeleri sunmaktadır:

Tablo 16. Çin'e yapılan aramalar için Skype fiyatları

İncelenen Skype tarifelerine dayanarak, bunların ilk üç hücresel ağdaki benzer tarifelerden daha karlı olabileceği sonucuna varabiliriz.

Viber

Viber Out aşağıdaki oranları sunar:

Tablo 17. Viber Out fiyatları

Bir VoIP sunucusu normal bir bilgisayara kurulabilir, bu nedenle VoIP çözümleri şirketlerde müşterilerle iletişim kurmak veya intranet iletişimi için sıklıkla kullanılır. Bu bağlantı sistem yöneticisi tarafından kontrol edilebilir. İletişimin güvenliğini kendisi yapılandırabilir ve konuşmaları kaydedebilir. Sunucu için DISA'yı, arayan istemcilerin sanal PBX'in kabul edeceği komutları DTMF modunda girebileceği şekilde yapılandırabilirsiniz. Ayrıca böyle bir sunucu için arama yapmanıza ve hücresel sinyal almanıza olanak tanıyan bir ağ geçidi de yapılandırabilirsiniz.

Çözüm

VoIP kullanmak, özellikle ücretsiz ve istikrarlı internetin olduğu yerlerde iletişim maliyetlerini azaltabilir. VoIP ile dolaşım konusunda endişelenmenize gerek yok. VoIP tarifeleri hücresel operatörlerin tarifeleri kadar karmaşık değildir.

Telefonla geri arama özelliğine genel bakış

Uygulamada, İnternet iletişiminin kapsama alanı sınırlıdır ve İnternet hizmetinin kendisi de maliyetlidir. Aynı zamanda VoIP fiyatları da cazip olmaya devam ediyor.

İnternet üzerinden bir bağlantı varsa ancak kararsızsa, Geri Arama hizmeti kurtarmaya gelir. Abonenin aramak istediği numara VoIP sunucusuna gönderilir ve sunucu aboneyi hücresel kanal üzerinden geri arar, ardından diğer aboneyi aramaya başlar ve bu iki aboneyi birbirine bağlar. İnternet kullanımı mümkün değilse, “A” abonesinin çağırdığı “B” abone numarasını içeren VoIP sunucu numarasına SMS gönderebilirsiniz. Geri arama telefonu için gerekli parametrelerin yerleşik olduğu SIM kartlar da vardır. Bu operatörler tasarruf sağlar peşin VoIP kullanıyorlar, dolayısıyla oranları daha ucuz.

Bu tür hizmetler MTS tarafından sağlanmaktadır. Abone numarasının başına *137* kodu ve sonuna # eklenir. Talebi gönderdikten sonra gelen bir çağrı var, cevapladığınız takdirde istekte gönderilen abone ile bağlantı başlayacak. Geri aramanın maliyeti abonenin ikamet ettiği ülkeye bağlıdır.

Megafon ayrıca aşağıdaki hizmetleri de sağlar: Dünya çapında hizmeti etkinleştirilmişse, bir numarayı normal şekilde çevirirken geri arama yapılabilir.

Bir DTMF sinyali kullanarak "B" abonesinin sayısını "A" abonesinden sunucuya aktarmanın başka bir yolu vardır. Bu yöntem iyidir çünkü herhangi bir modern telefon DTMF sinyalleri üretebilir ve birçok operatörden gelen aramalar ücretsizdir.

Android işletim sistemine sahip herhangi bir telefon DTMF sinyalleri üretebildiğinden, bu yöntem en evrensel olanıdır, minimum düzeyde ek hizmet bağlantısı gerektirir ve SIM kart gerektirmez. Bu tam olarak kendi VoIP sunucularının sahiplerinin abonelerle iletişim kurmak için kullanabileceği yöntemdir.

Geri Arama işlevinin kullanımını kolaylaştırmak için işlevselliği kullanılabilecek programların analizi

Doğrudan uygulama Bir operatöre bağlı kalmadan DTMF Geri Arama başvurularını bulmak zordur.

DTMF Geri Çağırma kullanılırken yararlı olabilecek işlevlerin uygulamaları vardır.

Bu uygulamalardan birine çoğunlukla önek adı verilir. Bu programlar, gelen veya giden bir aramayı yakalar ve buna sözde önek veya son eki ekler, yani telefon numarasını numaranın önüne veya arkasına eklerler ve sonuçta aşağıdaki türde bir sayı elde edilir: önek xxxxxxxxx sonek, burada x herhangi bir değerdir sayının karakteri.

Bu programların Geri Aramanın uygulanmasındaki görevi, belirli bir olaydan sonra bir DTMF sinyali eklemek olacaktır.

Önekleyici

Bu soruna en yakın çözüm 253°Below firmasının Prefixer'ıdır. Bu program, yapılandırabileceğiniz kuralları içerir:

C. Program akışı

D. Arama kaydına kaydedilecek numara

e. Kuralın çalışacağı sayılar

Program arayüzünden aşağıdaki gibi hem gelen hem de giden çağrılar için kurallar yapılandırılabilir. Yani program geldiğinde numarayı eklemelidir gelen çağrı. Teorik olarak, bir duraklama için “,” veya “;” sonekini gönderirseniz Çevir sesini beklemek için numarayı DISA'ya gönderebilirsiniz.

Şekil 14. Önekleyicinin ekran görüntüsü " A

Giden aramalar için program aslında bir önek ve sonek ekler, ancak gelen aramalar için yapılandırılmış kuralların aksine hiçbir şey eklemez. Yani pratikte DTMF Geri Arama iletişimi için kullanılamaz, ancak MTS'den Geri Aramayı uygulamak için kullanılabilir.

Klavyede yazmanın bir yolu var özel sembol veya bir grup karakter. Çoğu zaman, bu tür işlevselliğe sahip programlar, klavyenin veya arayüzün işlevlerini genişletmek için kullanılır. Android kontrolü. Abonenin, Geri Arama sunucusu onu geri aradığında numaranın tamamını hafızadan girmesini önlemek için, bir numaraya basma benzetmesini kullanabilir. Bu durumda telefon, DTMF sinyallerini sanki kullanıcı kendisi girmiş gibi gönderecektir. Bu işlevselliğe sahip oldukça fazla sayıda program var.

Oyun klavyesi

Bu özelliği test etmek için Locnet'in Gamekeyboard'unu kullandık. İhtiyacınız olan programı kullanmak için kök hakları. Bu program hangi karakterlerin hangi aralıklarla girileceğini kaydedebileceğiniz makrolar içerir. Makroyu etkinleştirecek sanal butonun ekrandaki boyutunu ve konumunu özelleştirebilirsiniz. Bu program için bir telefondan makro oluşturmak oldukça zordur, bu nedenle kapsamı az sayıda favori numarayla sınırlıdır. Bu program profilleri desteklediğinden, aranan numara için makro oluşturup onu bir tuşla ilişkilendirecek bir uygulama geliştirmek teorik olarak mümkündür. Bu karar abonenin, abone numarasını hafızasına kaydetmemesine ve numaranın tamamını çevirmemesine olanak tanıyacaktır. Ancak yine de kullanıcının ek işlemler yapması gerekiyor.

Kök hakları - tüm işlevlere erişim hakları UNIX sistemleri. Android UNIX benzeri bir işletim sistemi olduğundan root haklarını da sağlar ancak telefon üreticileri genellikle bunlara erişimi kısıtlar. Üretici firma yazılım yoluyla root haklarının alınmasını zorlaştırabilir ve flashlamayı yasaklayabilir. Üretici aşağıdakiler için araç sağlayabilir: kök almak haklar, ancak kök haklarını alan kullanıcının garantilerden feragat etmesiyle. Buna rağmen bazı işlevleri uygulamanın tek yolu root erişimine sahip olmaktır.

Çözüm

DTMF Geri Çağırma çözümlerinin çoğu, belirli bir operatörün kullanımına dayanmaktadır. DTMF Geri Çağırma'nın kullanımını kolaylaştıran yazılım araçları mevcut olsa da, özellikle bu sorunu çözmeyi amaçlayan kapsamlı bir çözüm yoktur. VoIP iletişimini sağlamak için kendi sunucu sahiplerinin DTMF yöntemini kullanması faydalıdır.

Teknolojik kısım

Geliştirme araçlarının analizi Android için

Android için özel uygulamalar yazmanın ana dili Java'dır. Çalışmak için programlama arayüzü (API) Android özellikleri Java kullanımını ima eder. Android için Java'da yazılmış uygulamalar oluşturmak için Android Yazılım Geliştirme Kiti'ndeki (SDK) Oluşturma Araçları kullanılır. Daha fazlasını sağlamak için uygulamaları C/C++ dilinde yazmanın bir yolu var yüksek hız uygulama işlemi. Bunun için Native Development Kit kullanılır. Platformlar arası uygulamalar oluşturmanıza olanak tanıyan Xamarin adında bir C# geliştirme çözümü var. Android için Python'da geliştirme yapmak için tabloda listelenen çeşitli çözümlerden birini kullanabilirsiniz:

Tablo 18. Android için python uygulamalarının karşılaştırılması

Android için Python

Android komut dosyası oluşturma

Bir çip üzerinde Python

Kivy çerçevesi, platformlar arası uygulamalar oluşturmanıza olanak tanır. Android için python ile ilişkilendirilebilir. Daha sonra Android'de çalışacak çapraz platform uygulamaları yazmak mümkün hale geliyor. Ayrıca PyJNIus adı verilen Android API'sinden Java sınıflarını çağırmak için sarmalayıcı kullanmanın bir yolu da vardır.

Kivy veya Xamarin gibi çözümlerin, uygulamanın yalnızca Android için değil diğer platformlar için de geliştirilmesi durumunda avantajları vardır. Ancak Android'e özgü özellikleri kullanırken Android API'sini kullanmanız gerekir. Android'in telefon işlevlerinin çalışmasıyla ilgili kendine has özellikleri olduğundan, bu, eldeki görev için bir avantaj sağlamaz.

Tesisler Android geliştirme için - SDK Araçları

Android geliştirmeye yönelik ana araçlar, araç kiti - SDK Araçları'na dahil edilmiştir. Bu paket, sanal cihazlarla çalışmaya yönelik araçları içerir. Android Sanal Cihaz Yöneticisi (AVD), emülatörleri çalıştırmak ve yapılandırmak için tasarlanmıştır. Bir emülatör oluşturmak için bir sistem görüntüsü kullanılır. Bu tür görüntüler grafiksel veya konsol arayüzünden indirilebilir Android programları SDK Yöneticisi. Android SDK Yöneticisi arayüzünde, Android'in bir sürümü için farklı cihazları taklit edecek birkaç görüntü seçebilirsiniz.

Şekil 15. Android SDK Yöneticisi GUI'sinin ekran görüntüsü

Önemli araçlardan biri, Android cihazlarda hata ayıklamak için tasarlanmış bir program olan Android Debug Bridge'dir (adb). Adb şuradan başlatıldı: Komut satırı ve konsol arayüzü üzerinden kontrol edilir. Adb, bilgisayara bağlı farklı cihazlarla çalışır:

· USB aracılığıyla bağlanan cihazlar

· Wifi aracılığıyla bağlanan cihazlar

· Taklit edilmiş cihazlar

Adb şunları yapmanızı sağlar:

· uygulamaları cihaza yükleyin veya kaldırın

· cihazın komut kabuğuyla çalışın

· paket yöneticisiyle çalışmak

· Niyet'i başlat

· LogCat ile çalışın

SDK, geliştirme ortamlarına bir şekilde entegre olan geniş bir araç seti içerir; örneğin, Oluşturma Araçları Eclipse veya Android Studio'ya dahil edilmiştir.

Entegre geliştirme ortamı Android Stüdyosu

Şu anda Android için resmi entegre geliştirme ortamı (IDE) Android Studio'dur. Bu IDE, JetBrains'in IntelliJ IDEA'sını temel alır ve bir dizi işlevi içerir:

· APK oluşturmak için Gradle komut dosyaları

· Seçenekler oluşturun ve birden fazla apk oluşturun

· Kod şablonları

· Katman düzenleyici (düzenler)

Başvuru imzalama

· Google Cloud Platform için yerleşik destek ve Google Cloud Messaging ile App Engine'i entegre etme yeteneği

Android Studio, birleştirilmiş uygulamaları adb aracılığıyla bağlanan birkaç cihaza paralel olarak yüklemenize olanak tanır.

Android Studio sürüm kontrol sistemlerini destekler.

Android Studio'daki kaynak kodu düzenleyicisi, geliştirmeyi kolaylaştıran bir dizi özelliğe sahiptir:

· kelimelerin otomatik tamamlanması

· koddaki hatalar hakkında ipucu

· java ve xml dosyaları için sözdizimi vurgulama

· Android kitaplığından bir sınıf kullanılıyorsa, kitaplıktan otomatik içe aktarma

· kullanılmayan değişkenlerin grileştirilmesi

· kod satırlarını yorumlama

· atlamak farklı dosyalar Vurgulanan kelimeyi arayan proje

Android Studio, Android için geliştirme yaparken kullanılması önerilen güçlü bir araçtır, bu nedenle geliştirmede onu kullanmaya karar verdik.

telefon geri arama android programlama

Python programlama diline genel bakış

Python, aşağıdakiler gibi çeşitli programlama paradigmalarını birleştiren üst düzey bir dildir:

· Nesne yönelimli programlama. Python'da her şey bir nesnedir: dizeler, sınıflar, sayılar vb. Örneğin “1” sayısını alıp buna “2” sayısını eklerseniz:

o zaman __add__ yöntemi aslında bir Tamsayı türü alacak olan nesne 1'de çağrılacak, böylece aşağıdaki giriş aynı sonucu verecektir:

· Dinamik yazma. Tür, programın yürütülmesi sırasında otomatik olarak ayarlanır. Bu tip yazmanın avantajı program yazmanın kolaylığı ve programcının bu yönteme hızlı hakim olmasıdır. Python'da türü kendiniz belirleyebilirsiniz. "Type" işlevini kullanarak bir nesnenin türünü öğrenebilirsiniz. "int" ve "float" işlevlerini kullanarak türü değiştirebilirsiniz. Böylece 1 sayısını, 1 değerine sahip bir dize veya kayan noktalı bir sayı olarak temsil edebilirsiniz. Örnek:

>>> b = dizi(1)

>>> c = kayan nokta(1)

Değişkenlerin türünü kontrol ederseniz, "a" "int", "b" "str" ​​ve "c" "float" olacaktır.

>>> yazdırma türü(a)

>>> yazdırma türü(b)

>>> yazdırma türü(c)

· Sıkı yazma. Python genellikle güçlü yazılan bir nesne dili olarak kabul edilir.

· Fonksiyonel programlama. Python özyineleme, tembel değerlendirme ve daha yüksek dereceli işlevleri kullanmanıza olanak tanır

· Zorunlu programlama. Python prosedürel programlama yöntemini destekler ve modüller python'da kullanılabilir.

Python yeterli görülüyor basit bir dille ABD kolejlerinde öğrenim gören en popüler dildir.

Python kodu satır satır yürütülür, bu nedenle çoğu zaman koddaki bir hata ancak o satırın çalıştırılmasından sonra fark edilebilir. Android için python kullanılarak oluşturulan programların başlatılması oldukça uzun zaman alıyor.

Böyle bir uygulamayı çalıştırmak için teknik araçlar Aşağıdaki özelliklere sahip bir iletişim cihazı bulunmalıdır:

· Cihazda Dahili bellek Uygulamayı yüklemek ve verilerini saklamak için 10 MB boş hafıza olmalıdır.

· Cihaz aşağıdaki yazılıma sahip olmalıdır:

A. Android 2.2 ve üzeri

B. OpenGLES 2.0

Dahili bellek gereksinimleri şu gerçeğinden kaynaklanmaktadır: yüklü uygulama android ve kivy için python içerecektir. Android için python'u çalıştırmak için, Android'de sürüm 2.2'den itibaren mevcut olan OpenGL ES 2.0'a ihtiyacınız var.

Programlama Diline Genel Bakış Java

Java nesne yönelimli bir programlama dilidir. Derleyiciyi kullanma kaynak Java'da, Java makinesi için bir dizi talimat içeren bayt koduna dönüşür. Bu yaklaşım platform bağımsızlığı sağlar. Android geliştirme durumunda Java makinesi Dalvik'tir. Böyle bir makinenin kullanılması verimliliği büyük ölçüde azaltabilir.

Nesne yönelimi açısından Java kavramı python'a benzer: “Java'nın özel bir üst sınıfı Object vardır ve tüm sınıflar onun alt sınıflarıdır. Bu nedenle, Object sınıfının bir referans değişkeni, başka herhangi bir sınıfın bir nesnesine atıfta bulunabilir."

Java, özel, genel, korumalı sınıf değiştiricileri veya değiştiricinin yokluğu ile belirtilen esnek bir erişim kontrol sistemine sahiptir:

Tablo 19. Java'da değiştiriciler ve erişim

Telefon fonksiyonunun basitleştirilmiş kullanımı için bir arayüzün geliştirilmesi Geri çağırmak

Kullanıcı için en basit arayüz, sisteminin standart arayüzüdür. Geri Arama işlevini kullanırken çağrı algoritması, olağan çağrı başlatma algoritmasından farklı olmamalıdır.

Böyle bir programın arayüzü aşağıdaki işlevlerin uygulanmasına yardımcı olmalıdır:

1. Geri arama

o Kişi defterinden (Kişiler) bir arama başlatıldığında uygulamayı başlatın

o Telefon sunucusuna bir çağrı başlatılması

o Telefon sunucusundan çağrı alma

o İletişim kanalı kurulduğunun belirlenmesi

o Sunucudan gelen DTMF sinyallerinin analizi

o Bir çağrı sırasında DTMF sinyalini iletin

2. Tarihle çalışmak

o Sistem çağrı geçmişi günlüğünden bilgi silme yeteneği

o Sistem çağrı geçmişi günlüğüne bilgi ekleyebilme

3. Ayarlar

o Profili etkinleştir/devre dışı bırak

o Profil seçebilme yeteneği

o Profili kişiselleştirme yeteneği

o Profil ekleme yeteneği

o Profili silme yeteneği

4. Profiller

o Sunucu numarasını değiştirme yeteneği

o Sunucu numaralarının beyaz listesini ayarlama yeteneği

o Sunucudan geri arama için bekleme süresini belirleme yeteneği

o DTMF sinyalinin gönderilmesi arasındaki süreyi belirleyebilme

Bu işlevlere sahip uygulama algoritması aşağıdaki gibidir:

Kullanıcı uygulamayı ilk kez açar ve bir profil oluşturur. Profilde kullanıcı telefon sunucusu numarasını belirtir. İÇİNDE Beyaz liste kullanıcı telefon sunucusunun onu geri arayacağı numaraları girer. Kullanıcı ayarlarda bekleme süresini belirtir. Sunucudan geri arama olmazsa kullanıcı, uygulamayı manuel olarak kapatmadan telefonu kullanmaya devam edebilecektir.

Uygulamayı kurduktan sonra kullanıcı kişi defterinden bir kişiyi arayabilir. Şu anda, arama yapabileceğiniz bir uygulamayı seçmek için bir menü görünecektir. Kullanıcı DTMF Geri Arama'yı seçerse iletişim numarası uygulama tarafından kaydedilecek ve uygulamanın kendisi sunucuyla bir çağrı başlatacaktır. Sunucunun bağlantısı kesildiğinde ve geri aradığında, uygulama aramayı yanıtlayacak ve kayıtlı numarayı dokunma sesiyle arayacaktır; bunun ardından kullanıcının aranan aboneyle bağlantı kurmasını beklemesi gerekecektir.

Konuşmanın bitiminden sonra kullanıcının aradığı abonenin numarası arama kaydında kalmalıdır. Arama süresinin hesaplanması arama anından itibaren başlamalıdır.

Geri Arama işlevinin kullanımının nasıl basitleştirileceğini gösteren bir prototipin geliştirilmesi

Gerçek yeteneklerine ve geliştirme konusundaki sıfır deneyimlerine dayanarak Android, prototip için minimum gereksinimler geliştirildi:

1. Prototip, Android 2.1'den Android 5.1'e kadar tüm modern Android cihazlarda çalışmalıdır.

2. Prototip, telefon sunucusu geri aradığında abonenin numarasını çevirmeyi kolaylaştırmalı

3. Bir abonenin numarası bir prototip aracılığıyla aranırken, çağrı telefon sunucusu numarasına başlatılmalı ve aynı zamanda abonenin aradığı numaranın hatırlanması gerekir.

Belirli bir numaraya çağrı başlatın

Geliştirmenin ilk aşaması, uygulama kodunda belirtilen numaraya çağrı yapabilen bir uygulama yazmaktı. Değişken değerlerin kod içerisinde sabit olarak kodlandığı ve dış kaynaklardan alınmadığı bu yönteme sabit kodlama adı verilmektedir. Bu yöntem, her seferinde numarayı çevirmemek için özellikle uygulamayı hızlı bir şekilde test etmek için kullanılır.

Bu dilde yazma deneyimim olduğu için python programlama dilinde yazmaya karar verdim. Bunu uygulamak için Android API'sinden android.intent.action.CALL Java sınıfını bağlamak gerekiyordu. Amaç bu başvuru uygulama tarafından herhangi bir aboneyi arama yeteneğini test ediyor. Bu işlev“A” abonesi “B” abone numarasını aradıktan sonra telefon sunucusu numarasına bir çağrının başlaması gerekir. Bu işlevi uyguladıktan sonra, deneyimlerime rağmen, python için uygulama yazmanın pek çok açık olmayan sorunla karşı karşıya kaldığı ve bunun sonucunda, bitmiş uygulamanın yüklenmesinin çok uzun sürdüğü ve bunun da telefon için oldukça kritik olduğu ortaya çıktı. Ayrıca dili bilmeden API'yi anlamanın da mümkün olduğu ortaya çıktı. Java programlamaçok zor olacak. Java programlama dilinin anlaşılması hala gerekli olduğundan ve Java'daki nihai sonuç avantajlar sağladığından, işlevin Android Studio kullanılarak Java için yeniden yazılmasına karar verildi. İşte Java'daki son fonksiyonun kodu:

genel geçersiz Çağrı (Görünümü görüntüle) (

mNumberTextView.setText("Çağrıldı" + tel.getText() + "Başlatıldı");

String toDial = "tel:" + tel.getText().toString();

startActivity(new Intent(Intent.ACTION_CALL, Uri.parse(toDial)));

Kişi defterinden numara alma

Bir Android uygulamasının başka bir uygulamadan çağrılabilmesi için açık ve örtülü Intent'leri kullanabilirsiniz. Açık bir Amaç, hangi sınıfı çağırması gerektiğini belirtir:

Intent niyet_about = new Intent(MainActivity.this, AboutActivity.class);

startActivity(intent_about);

AboutActivity.class etkinliği Android.Manifest.xml dosyasına kayıtlı olduğundan sistem hangi etkinliğin başlatılması gerektiğini bilir.

Örtülü Intent'te başlatılması gereken sınıf yerine sistemin tepki vermesi gereken eylem belirtilir. Android'deki standart kişi defterinde (Kişiler), buradan çağrıldığında ACTION_CALL_PRIVELEGED eylemi gerçekleşir. Bu eyleme “tel:” numarası iletilir. Örneğin, bu eylemi şunu yazarak çağırmak için adb'yi kullanabiliriz:

adb -e kabuk başlıyorum -a android.intent.action.CALL_PRIVILEGED -d tel:911

Burada 100 telefonun arayacağı numaradır. komutunu yazarsanız

adb kabuğu başlatıyorum -a android.intent.action.CALL -d tel:911

Bu durumda böyle bir numarayı arama ayrıcalığı olmayacağından arama yapılmayacaktır. İhtiyaca bağlı olarak farklı uygulamalar farklı eylemleri kullanabilir. Eğer Acil çağrılar beklenmiyorsa ACTION_CALL kullanılacaktır. Bu, bir tarayıcıdan veya iletişim numarasına sahip bir uygulamadan yapılan aramalarda daha yaygın bir durumdur.

Bazı donanım yazılımlarında, iletişim defteri olarak alternatif bir uygulama kullanılabilir. Bu uygulamanın kaynak kodu kapalı olabilir. Bu tür uygulamalarda çağrı başka bir şekilde başlatılıyorsa, çağrının hangi niyetle başlatıldığını tahmin etmek zor olabilir. Bu durumda, alternatif bir iletişim defterini şuradan yükleyebilirsiniz: Google Oyun veya diğer güvenilir kaynaklar.

Programın örtülü Intent'i engellemesi için AndroidManifest.xml dosyasına bir niyet filtresi eklemeniz gerekir:

Numarayı sadece iletişim defterinden almanız gerektiğinden şemada “tel” belirtilmektedir.

Android işletim sistemi artık her ACTION_CALL veya ACTION_CALL_PRIVILEGED Intent çağrıldığında uygulamayı çağırmanızı isteyecektir.

Uygulamanın “tel” içindeki sayıyı kullanabilmesi için ihtiyacımız olan sınıfta getData() metodunu kullanmamız gerekiyor:

Düğmeli kayan pencere

Kayan bir pencere oluşturabileceğiniz StandOut adında bir kütüphane var. Kütüphane açık kaynaktır ve örnekler içerir. Bu kütüphane ücretsiz MIT lisansı altında dağıtılmaktadır. Bu lisans, bu kitaplığı içeren yazılımı özgürce dağıtmanıza olanak tanır. Kütüphane bu haliyle temin edilmiştir; oluşabilecek zararlardan yazarlar sorumlu değildir.

Bu kütüphanenin özellikleri:

· Kendi GÖRÜNÜMÜNÜ sağlama. Kolay entegrasyon.

Yüzer pencere dekoratörleri:

1. kayan pencere başlığı

2. Kayan pencereyi küçülten düğme

3. kayan pencereyi kapatan düğme

4. pencereyi yeniden boyutlandırma düğmesi

· Küçültülmüş pencere geri yüklenebilir

· Pencere oluşturma farklı şekiller

Windows taşınabilir

Bu kitaplıktaki örnekleri test ederken, yüzen pencerelerin, çağrı sırasında da dahil olmak üzere tüm pencerelerin üzerinde olabileceği keşfedildi. Bu özellik arama sırasında çeviricide istenen numarayı çevirecek bir düğme oluşturmak için kullanılabilir.

Bir pencere oluşturmak için StandOutWindow sınıfının uzantısı olacak bir sınıf yazmanız gerekir:

genel sınıf FloatingButton StandOutWindow'u genişletir (

public void createAndAttachView(int kimlik, FrameLayout çerçevesi) (

LayoutInflater şişirici = (LayoutInflater)getSystemService(LAYOUT_INFLATER_SERVICE);

Görünüm görünümü = inflater.inflate(R.layout.floating_button, çerçeve, doğru);

Res/layouts'ta bu pencerenin float_button.xml arayüzünü tanımlayan bir katman vardır.

Kayan pencere düğmesi

Benzer belgeler

    Mimarlık ve yaratılış tarihi işletim sistemi Android. Java programlama dili. Bir Android uygulamasını uygulamak için bir araç seçme. Yazılım uygulaması Android uygulamaları. Geliştirilenlerin testlerinin yapılması yazılım.

    kurs çalışması, eklendi 01/18/2017

    Android mobil işletim sisteminin gözden geçirilmesi. Araç ve teknolojilerin seçimi. Grafiksel arayüz prototip tasarımı. Kullanıcı arayüzünün özellikleri ve açıklaması. Veritabanı tasarımı ve geliştirilmesi. Gerekli izinlerin listesinin belirlenmesi.

    kurs çalışması, eklendi 09/13/2017

    Android işletim sisteminde hava durumunu görüntülemek için mevcut popüler programların gözden geçirilmesi. işletim sistemi modern akıllı telefonlar. Ana Özellikler Android, Java teknolojisi. Yazılım kısmının geliştirilmesi, dil seçimi, algoritmanın tanımı, mantıksal yapısı.

    kurs çalışması, eklendi 04/16/2014

    Bir dizi protokol ve ekipman kullanılarak bir IP ağı üzerinden telefon iletişiminin uygulanması. IP telefon ağındaki faturalandırma ve yönetim sistemi için dinamik çağrı yönlendirme alt sisteminin geliştirilmesi. Grafiksel kullanıcı arayüzü için temel gereksinimler.

    tez, 11/08/2015 eklendi

    Eczane eczane zinciri için Android işletim sistemi üzerinde akıllı telefon uygulamalarının geliştirilmesi. Ameliyathane mimarisi Android sistemleri. Uygulama mimarisi ve uygulanması. İşlevselliği. İş tanımı mobil uygulama. Bir ürün yaratma maliyetlerinin hesaplanması.

    tez, 17.06.2017 eklendi

    Cep telefonlarında kullanılan Android işletim sisteminin özellikleri. Eclipse geliştirme ortamında bir Android projesi oluşturma. Manifest dosyasının genel yapısı ve işlevleri. Android uygulama bileşenleri. İşaretleme yöntemleri.

    kurs çalışması, eklendi 11/15/2012

    Genel şemaAndroid uygulamaları. Amacı tekerlemelerin telaffuzu yoluyla konuşmayı geliştirmek olan Android işletim sistemi için bir eğitim uygulamasının geliştirilmesi. Geliştirilen uygulamanın bileşenlerinin tanımı, test edilmesi.

    tez, eklendi: 02/04/2016

    IP telefonunun temel kavramları ve IP telefon ağlarının yapı türleri. IP telefonu için Cisco Systems ses ağ geçitleri. Aramaları otomatik olarak yanıtlamanın bir yolu olarak IP IVR. Dağıtılmış bir İletişim Merkezi oluşturmanın avantajları ve yapısının mimarisi.

    tez, 21.04.2016 eklendi

    Android işletim sisteminin genel özellikleri. Bir dosya yöneticisinin oluşturulmasına dayalı uygulama geliştirme. Uygulamayı kullanarak internette “bulut depolamada” saklanan dosyalara erişim elde etmek. Yazılım maliyeti hesaplaması.

    tez, eklendi: 04/03/2015

    için yazılım geliştirme Android platformları sürüm 2.3: Bir futbol takımının taraftarları için, takım ve başarıları hakkındaki etkinlikleri, istatistikleri ve diğer bilgileri görüntüleme olanağına sahip bilgi uygulaması. JsonDataManager.java listeleniyor.

Herkese selam.
Bir şeyi kontrol etmek ister misin? cep telefonu ve hatta herhangi bir süslü mikrodenetleyici olmadan mı? Cevabınız evet ise kediye hoş geldiniz.

İÇİNDE Son zamanlarda Muska'da, hücresel ağ üzerinden her şeyi kontrol edebileceğiniz SIM800 gibi GSM modüllerinin birkaç incelemesi vardı. Ancak sorun şu ki, bunların hepsi bir mikro denetleyiciye bağlanmayı, ürün yazılımı yazmayı ve deneyimi olmayan kişi için zor olan diğer şeyleri gerektiriyor. Diğer uç ise: “Telefonun titreşim motoruna bir röle lehimledim, her şey benim için çalışıyor” :)) Bu da mümkün, ancak pompa seranızı donmuş su ile sulamaya çalışırsa şaşırmayın. Peki, SMS'in gelişinden sonra “Yeni Yılınız Kutlu Olsun! Bilinmeyen bir gönderenden :)))
Genel olarak bu iki çözüm arasındaki boşluğu doldurup kendiminkini sunmaya karar verdim.

Bugün DTMF sinyal kod çözücüden veya basit anlamda bir ton sinyalinden bahsedeceğiz.
Meraklısı okuyabilir
Teknoloji oldukça eski olmasına rağmen hala tüm telefonlar tarafından desteklenmektedir.
Aslında bir kurumu aradığınızda kullandığınız tonlu aramadır ve telesekreter size şunu söyler: “Abonenin numarasını biliyorsanız “1”e, yeni tekliflerimizi öğrenmek istiyorsanız “2”ye basın. ve benzeri. Telefonunuzda istediğiniz numaranın bulunduğu tuşa basarak ses kanalı üzerinden belirli bir tonda sinyal gönderirsiniz. Telefon klavyesindeki her karakterin kendine ait bir “melodisi” vardır. DTMF kod çözücünün kodunu çözdüğü ve çıkışlarında sinyallere dönüştürdüğü bu sestir.


Kart bir mikro devre üzerine monte edilmiştir, 5 Volt ile beslenir ve aşağıdaki çıkışlara sahiptir: Q1-Q4 ayrık çıkışlar, StQ/StQ ters çıkışlar, bir sinyal doğru şekilde tanındığında tetiklenir. Anakarta lehimlenmiş 3,5 mm'lik jakı kullanmak istemiyorsanız ses sinyali için IN girişi. GND/VCC güç kaynağı, 5 Volt.
Q1-Q4 çıkışları tabloya göre tetiklenir:

Örneğin, şimdi kartımdaki iki orta LED yanıyor, Q2 ve Q3 çıkışları etkinleştiriliyor, tabloya bakın - bu, basılan "6" tuşuna karşılık geliyor. “1” tuşuna basarsam Q1 çıkışı çalışacak, “2” ise Q2 çalışacaktır. Eğer “3” ise Q1 ve Q2 çıkışları aynı anda “yanacaktır”. Ve benzeri.
Genel olarak bu 4 bitlik bir koddur. Özel bir çip ile şifresini çözerseniz 16 çıktı alabilirsiniz.
Bu arada Ali anakartı zaten kod çözücüyle birlikte satıyor ama maliyeti daha fazla. İleri seviye için bir seçenek tüm bunları bir mikro denetleyiciye bağlamaktır, ben bunu yaptım, hatta bir şifre belirleyebilir, arayıp şifreyi yazabilir, kontrole erişim kazanabilirsiniz...
Ama bu artık makalemin kapsamı dışında çünkü... Makalenin başında her şeyin basit olacağına söz verdim.

Ve böylece, KT815 transistörünü, 1,1 kOhm'luk bir direnci veya buna benzer bir 12 V röleyi ve bir LM7805 dengeleyiciyi alıyoruz. Geri kalan parçalar (röle bobinindeki 1N4007 koruyucu diyot, sarı 0,1 µF seramik kapasitörler ve 1000 µF elektrolitik kapasitörler) arzu edilir, ancak bunlar olmadan çalışır. Röleye yük olarak bir tweeter bağlanır.
Diyagram çizmeyeceğim, kurulum menteşeli, fotoğrafta her şeyi görebilirsiniz:


Diğer tarafta:


Yapının genel güç kaynağı 12 V'tur çünkü bu röle için gereklidir, ancak kart için dengeleyici tarafından 5 V'a düşürülür.
Anakart üzerindeki 3,5 mm'lik jakı bir kabloyla telefonun kulaklık çıkışına bağlayıp, otomatik almayı ayarlıyoruz ve işiniz bitti. Şimdi panele bağlı bir telefonu ararsanız, ahize kaldırılıncaya kadar bekleyin ve “1” tuşuna basın, röle çalışacak ve zil çalmaya başlayacaktır. “2”ye basarsanız her şey kapanacaktır. Bu arada, neyi kontrol etmeyi planlıyorsanız yapın, zili bırakmanızı tavsiye ederim. Bu kullanışlıdır çünkü telefonda duyabilirsiniz ve bu şekilde bazı bilgiler alabilirsiniz. geri bildirim: Aradım, bip sesi duyuyorsunuz, yük devrede demektir :)

Her şeyin nasıl çalıştığını gösteren kısa bir video hazırladım.

+128 almayı planlıyorum Favorilere ekle İncelemeyi beğendim +72 +169

Radyo kontrollü modeller, sınırlı çalışma aralığına, sınırlı frekans tepkisine ve denetleyicilerle eşleşme sorunlarına sahip RF devrelerini kullanır. Modeli kontrol etmek için cep telefonu kullanmak bu dezavantajları ortadan kaldırır. Model, cep telefonu kullanıldığında operatörün kapsama alanı boyunca kontrol edilebilmekte ve harici cihazlarla sorunsuz çalışabilmektedir.

Rağmen dış görünüş ve model yetenekleri büyük ölçüde farklılık gösterebilir; tüm modellerde mekanik bir parça ve modeli kontrol eden bir parça bulunur. Model yönetimi üç aşamadan oluşur: komut alımı, işleme ve yürütme. Kural olarak, komutlar bir mikrodenetleyici tarafından işlenen harici sensörler tarafından verilir ve yürütme için motorlar kullanılır.

Gözden geçirmek

Bu makine kontrol için iki cep telefonu kullanıyor; biri uzaktan kumanda olarak elinizde, diğeri ise alıcı olarak modele takılı. Telefonunuzdan modelin telefonuna çağrı alınır ve çağrı sırasında tuşlara bastığınızda cep telefonundan çoklu frekans sinyali alınır. Bu sinyale Çift Tonlu Çoklu Frekans (DTMF) adı verilir.
MT8870 DTMF kod çözücüyü kullanarak DTMF'nin kodu ikili koda dönüştürülür; bu, ATmega16 mikro denetleyici tarafından işlenir ve ardından motor sürücüsüne bir komut verilir.

Gördüğünüz gibi bu model oldukça basittir ve karmaşık vericilerin yapımını gerektirmez.
Arama için DTMF sinyali kullanılır telefon numarası veya sesli cevap.
Sinyal, sabit frekanslı iki sinüzoidal sinyalden oluşur ve ikili koda kolayca çözülür veya bunun tersi de geçerlidir. Bir karakteri DTMF sinyaline kodlamak için iki sinüzoidal sinyalin eklenmesi gerekir. Örneğin 5 sayısını iletmemiz gerekiyorsa sinyallerden birinin frekansı 1336 Hz, diğerinin frekansı 770 Hz olacak ve bu sinyali ikinci telefona alacağız.

Şemanın açıklaması

Blok şeması cihazın çalışma prensibini göstermektedir. Ana bileşenleri bir DTMF kod çözücü, bir mikro denetleyici ve bir motor sürücüsüdür.

MT8870 yongası DTMF kod çözücü olarak kullanılır. Dijital sinyal tanıma yöntemlerini kullanır ve 4 pime bir sinyal verir. Ayrıca giriş sinyalinin ön filtrelenmesini gerektirmez. PIN2'ye (B-) bir giriş sinyali uygulandığında, kodu çözülmüş sinyal, Q1(pin11) ila (pin14) pinlerine gönderilir.

ATmega16, düşük güç tüketimine sahip, gelişmiş AVR RISC mimarisini temel alan 8 bitlik bir CMOS mikro denetleyicisidir. 16KB programlanabilir flash belleğe, 512B EEPROM'a, 1KB SRAM'a, 32 I/O hattına ve 32 kayda sahiptir. Mikrodenetleyicinin PD0 - PD3 ve PD7 pinlerinden L293d motor sürücüsünün IN1 - IN4 ve EN1-EN2 çıkışlarına sinyal gönderilir. S1 anahtarı manuel sıfırlama için kullanılır.

programı

Mikrodenetleyici WIN AVR kullanılarak programlanır. Bunu nasıl yapacağını bilmeyenler için bir göz atın, orada her şey ayrıntılı olarak anlatılıyor. Makaleye bir kaynak ve bir hex dosyası eşlik etmektedir. WinAVR kuruluysa açılışta herhangi bir sorun yaşanmamalıdır.

İş

Modeli kontrol edebilmek için herhangi bir telefondan modelin cep telefonunu aramanız gerekmektedir. Makine otomatik olarak yanıt verdiğinde aşağıdaki tuşlara basın:
2-ileriye gitmek.
4 – sola dönün.
8 – ters yönde hareket.
6 – sağa dönün.
5 – dur.

Öğelerin listesi:
DTMF kod çözücü MT8870 – 1.
Mikrodenetleyici Atmega16 – 1.
Motor sürücüsü L293d – 1.
Op-amp Cd7004 – 1.
Diyot 1N4007 – 1.
Direnç 100 kOhm – 2.
Direnç 10 kOhm – 5.
Direnç 330 kOhm – 1.
Kapasitör 0,47uF – 1.
Kapasitör 0,1 uF – 1.
Kondansatör 22pF – 4.
Kuvars 3,57 MHz – 1.
Kuvars 12 MHz – 1.
Anlık düğme – 1.
Motorlar (6V, 50 rpm) – dört tekerlekten çekiş için 2 veya 4.
Pil 6V – 1.
Tekerlekler – 4.
Cep telefonu – 2.
Hoparlör (eller serbest) – 1.

Telefonu kasaya sabitlemelisiniz. Telefon, ahizesiz kullanım kulaklığı aracılığıyla robota bağlanır.

Eller serbest bağlantı
Mini jak konektörüyle eller serbest kullandım.

Programın kaynak kodunu ve ürün yazılımını aşağıdan indirebilirsiniz.

Radyo elemanlarının listesi

Tanım Tip Mezhep Miktar NotMağazanot defterim
IC1 DTMF kod çözücüMT88701 Not defterine
IC2 MK AVR 8 bit

ATmega16

1 Not defterine
IC3 Motor sürücüsüL293D1 Not defterine
IC4 Tampon IC, sürücü

SN74LS04

1 Not defterine
D1 Doğrultucu diyot

1N4007

1 Not defterine
C1 Kapasitör0,47 µF1 Not defterine
C2, C3, C5, C6 Kapasitör22pF4 Not defterine
C4 Kapasitör0,1 uF1 Not defterine
R1, R2 Direnç

100 kOhm

2 Not defterine
R3 Direnç

330 kOhm

1 Not defterine
R4-R8 Direnç

10 kOhm

5 Not defterine
XTAL1 Kuvars rezonatör3,57 MHz1 Not defterine
XTAL2 Kuvars rezonatör12MHz1

DTMF (Çift Tonlu Çoklu Frekans) Telefonunuzdaki bir düğmeye bastığınızda üretilen bir sestir.
DTMF, çeşitli etkileşimli sistemler için telesekreterlerde (IVR'ler) yaygın olarak kullanılmaktadır. VoIP'e uygulandığında, çeşitli codec bileşenleriyle çalışırken DTMF oldukça fazla dikkat gerektirir, bu nedenle işleyişinin açıkça anlaşılması gerekir.

Varsayılan olarak Gateway, RTP akışında DTMF gönderir ( bant içi), codec'i kullanırken bu iyi çalışıyor yüksek bit hızı G.711, yani. ses akışı sıkıştırılmamışsa.
DTMF ile ilgili temel sorun, G.729 codec bileşeni gibi sıkıştırma algoritmaları kullanıldığında ortaya çıkar. Gerçek şu ki, sıkıştırıldığında ana akışın kalitesi gözle görülür şekilde kötüleşiyor ve bunun abonelerin birbirini anlama yeteneği üzerinde neredeyse hiçbir etkisi olmamasına rağmen, DTMF tonu artık yeterince net değil ve yanlış algılanıyor.

Bu sorun kullanılarak çözülebilir DTMF Rölesi DTMF sinyallerinin RTP akışından ayrı olarak taşındığı veya bant dışı.

Birkaç örneğe bakalım.


Şekilde H.323 ağ geçidi aracılığıyla telefon bağlantısının şeması gösterilmektedir.

PSTN bölümünde DTMF bant içinde gönderilir, yani. Analog hat olduğu için DTMF Röle diye bir kavram bile yok.

DTMF rölesi yalnızca sıkıştırma yöntemlerinin kullanılabildiği VoIP bölümünde gerekli hale gelir.
Şunu da söylemek mümkündür:
- bant içi DTMF rölesi RTP akışının içine girecektir, yani. şekilde kırmızı RTP çizgisi boyunca.
- bant dışı DTMF rölesi sinyalizasyonla birlikte gidecektir; şekildeki yeşil çizgiler boyunca.

Sitelerde telefon-CUCM Ve CUCM-H.323Ağ Geçidi Farklı sinyaller ve dolayısıyla farklı DTMF aktarma yöntemleri kullanılır. Telefon tarafından kodlamasında DTMF içeren SCCP mesajları gelirken, H.323 ağ geçidi tarafından DTMF ile birlikte sinyalleşme H.245 mesajlarından gelir.
Bizim durumumuzda CUCM, DTMF İleticisi olarak görev yapar. çeşitli türler alarmlar.

Konum açık telefon-CUCM sadece yapabileceğimiz bant dışı SCCP telefonu desteklemediğinden bant içi.
Konum açık CUCM-H.323Ağ Geçidi gibi yöntemler bant içi, Bu yüzden bant dışı. Ayrıca, SCCP telefonu durumunda, etkinleştirmek için bant içi kullanım gerektirecek OTP.

Ayrıca H.323 Dış Hat için DTMF ayarlarının, bu dış hattın fiziksel bir H.323 Ağ Geçidi üzerindeki bir Çevirmeli eş ile çalıştırılmasına yönelik ayarlar olduğunu da anlamalısınız.

Sinyal protokolüne (H.323, SIP, MGCP, SCCP) bağlı olarak, DTMF Rölesini uygulamak için farklı yöntemler vardır. Her durumda, Çağrı Yöneticisi CUCM başlangıçta herkes için ortak olan bir yöntemin koordinasyonunu bozmaya çalışır. Ortak bir yöntem bulunamazsa MTP kullanılmaya çalışılır.

H.323 DTMF Desteği

Cisco Ağ Geçitleri aşağıdaki DTMF Aktarma yöntemlerini destekler:

  • Cisco'nun tescilli: - bant içi DTMF rölesi. DTMF, sesle aynı RTP akışında gönderilir, ancak DTMF tonları biraz farklı şekilde kodlanır, bu da onların diğer tarafta başarılı bir şekilde ayırt edilmesine ve alınmasına olanak tanır. DTMF örnekleri şu şekilde tanımlanır: RTP verisi türü 121. Yöntem yalnızca her iki tarafta da Cisco ekipmanı varsa ve aynı yöntem varsa çalışır
  • H.245 Alfanümerik:-Bant dışı DTMF rölesi. DTMF'yi RTP akışından ayırır ve bunları aracılığıyla gönderir H.245 Kullanıcı Giriş Göstergesi mesajları. Bu yöntem göndermiyor ton uzunluğu: Ton uzunluğu her zaman 500 msn olarak kabul edilir.
    Bu örnekte "5"e tıkladık.

    Hata ayıklama: h245 asn1 hata ayıklama

  • H.245 Sinyali:-Bant dışı DTMF rölesi. Bu yöntem ton uzunluğunu gönderme yeteneğine sahiptir ( ton uzunluğu).

    Hata ayıklama: h245 asn1 hata ayıklama

  • :- bant içi DTMF rölesi. Cisco'ya ait olana benzer şekilde çalışır; DTMF, sesle aynı RTP akışında gönderilir. RTP verisi türü. Başka bir veri yükü DTMF örneklerinin sıkıştırılmasına izin vermiyor. Farklı Cisco'nun tescilli, NTE RFC 2833 standardını kullanır.

    Hata ayıklama: h245 asn1 hata ayıklama

Bir Cisco yönlendiricide aşağıdaki komutlar mevcuttur:

Yönlendirici(yapılandırma-arama-eş)#dtmf-röle ? cisco-rtp Cisco Tescilli RTP h245-alfasayısal DTMF Aktarımı, H245 Alfasayısal IE aracılığıyla h245-sinyalli DTMF Aktarımı, H245 Sinyali aracılığıyla IE rtp-nte RTP Adlandırılmış Telefon Olayı RFC 2833 yönlendirici(yapılandırma-arama-eş)#

En iyi pratik:
Dialpir'de aşağıdaki komutları vermek en iyisidir:

Arama-eş ses 3000 sesli arama açıklaması Uzun çağrılar hedef-örüntü ... oturum hedefi ipv4:192.168.0.11 dtmf-röle h245-sinyal h245-alfasayısal cisco-rtp rtp-nte codec g711ulaw vad yok

Bu durumda her iki taraf da kendi aralarında uygun dtmf-röle yöntemini müzakere edebilir.

Seçilen DTMF aktarma yöntemini belirlemek için:
çağrı aktif sesini göster

Yönlendirici#çağrı aktif sesini göster ........... PeerAddress=5001 ........... tx_DtmfRelay=rtp-nte

Böylece CUCM, her iki taraf için de hangi DTMF yönteminin uygun olduğunu otomatik olarak kontrol eder.
CUCM'deki H.323 Ağ Geçidi ile ilgili olarak, orada herhangi bir DTMF ayarı yoktur. CUCM karşı tarafın ayarını kabul eder.

MGCP DTMF Desteği

MGCP için aşağıdaki DTMF Aktarma yöntemleri mevcuttur:

  • Cisco'nun tescilli: DTMF, sesle aynı RTP akışında gönderilir, ancak DTMF tonları biraz farklı şekilde kodlanır, bu da onların diğer tarafta başarılı bir şekilde ayırt edilmesine ve alınmasına olanak tanır. DTMF örnekleri şu şekilde tanımlanır: RTP verisi türü 121. Yöntem yalnızca her iki tarafta da Cisco ekipmanı varsa ve benzer bir yöntem seçilirse (hiçbir şey üzerinde pazarlık yapılmaz) çalışır.
  • : NSE aslında Cisco Tescilli NTE'dir. Yöntem yalnızca her iki tarafta da Cisco ekipmanı varsa ve benzer bir yöntem seçilirse (hiçbir şey üzerinde pazarlık yapılmaz) çalışır.
  • : sırasıyla iki modda çalışabilir:
    - Ağ geçidi kontrollü mod (NTE GW): Ağ geçitleri birbirleriyle bağımsız olarak DTMF üzerinde anlaşarak SDP mesajlarında yetenek bilgisi alışverişinde bulunur. Bu süreç Çağrı Temsilcisi için şeffaftır. Bu durumda, her iki ağ geçidinde de MGCP çalışıyor ve her ikisi de aynı CUCM'ye bağlı.
    - Çağrı temsilcisi tarafından kontrol edilen mod (NTE CA): Görüşmelerde Çağrı Aracısı kullanılır, yani. MGCP ağ geçidi adına hareket eder (SDP mesajları Temsilciye gönderilir). Bu mod, ikinci ağ geçidinin bir MGCP Ağ Geçidi olmadığı durumlarda kullanılabilir. Görüşme sonrasında Çağrı Temsilcisi, karşı tarafla kabul edilen RTP-NTE değerleri hakkında ağ geçidine talimat verir.
  • Bant dışı: Tonlar, MGCP mesajları kullanılarak CUCM'ye gönderilir; RTP akışının dışında (Bant dışı). CUCM ise DTMF'yi alır ve diğer tarafa iletir.

MGCP, yalnızca düşük hızlı codec'ler (G729, iLBC, GSM vb.) için DTMF geçişini kullanır. Bit hızı codec'leri için G711 DTMF gönderilecektir bant içi.

MGCP durumunda, DTMF ayarlarının Çağrı Aracısı (CUCM) tarafından mı belirleneceğini yoksa Ağ Geçidinde ayarlanan ayarların mı kullanılacağını seçebiliriz.
CUCM'ye gidelim: Cihaz > Ağ Geçidi uygun MGCP Ağ Geçidini seçin.
Bölümle ilgileniyoruz DTMF Röle Türü.

Seçerken Mevcut GW Yapılandırması, ağ geçidindeki ayar kullanılacaktır.
IOS Gateway'de DTMF'yi aşağıdaki komutla ayarlayabiliriz:

Yönlendirici(yapılandırma)#mgcp dtmf-röle voip codec bileşeni tüm mod? cisco Mgcp dtmf-röle modunu cisco devre dışı olacak şekilde ayarlayın Mgcp dtmf-röle modunu devre dışı bırakılacak şekilde ayarlayın nse Mgcp dtmf-röle modunu nse nte-ca olarak ayarlayın Mgcp dtmf-röle modunu nte-ca nte-gw olarak ayarlayın Mgcp dtmf'yi ayarlayın -röle modu nte-gw bant dışı olacak Mgcp dtmf-röle modunu bant dışı olacak şekilde ayarlayın

Örneğin CUCM'ye başka bir seçenek koyarsak Cisco, yukarıdaki ilgili komut otomatik olarak girilecektir (MGCP mekanizmaları).

MGCP'de bir hata fark edildi:

CSCta69407 Hata Ayrıntıları(Herhangi bir tür bant içi DTMF sinyali (RTP-NTE, NSE veya Cisco Tescilli) kullanıldığında, DSP'ler mgcp paketleri kullanarak OOB dtmf sinyalini kapatmaz. Bu nedenle, sonlanan GW'de yinelenen rakamlar, rtp ve diğerleri CUCM'den geliyor)

Geçici çözüm: Bant dışı mgcp dtmf geçiş tipini kullanın.

SIP DTMF Desteği

Varsayılan olarak SIP, DTMF'yi gönderir bant içi ancak aşağıdaki seçenekleri kullanabiliriz:

  • RTP-NTE (NTE veya RFC2833) - bant içi DTMF rölesi. DTMF bilgilerini taşımak için ses paketleri yerine RTP Adlandırılmış Telefon Etkinliği (NTE) paketlerini kullanır. Bu durumda SDP, düğümler arasında veri yükü türü=NTE değerini müzakere etmek için kullanılır. Her ne kadar resmi olarak bu bant içi ancak gerçekte ses akışında ses duyulmayacaktır çünkü NTE paketleri ses değildir.
    SCCP telefonları yalnızca bant dışı DTMF geçişini kullandığından RTP-NTE, SCCP telefonlarıyla çalışamaz. Bu nedenle MTP'nin RTP-NTE ile birlikte kullanılması gerekir.
  • YUTUM BİLGİSİ - bant dışı(OOB) DTMF rölesi. DTMF bilgisi SIP INFO mesajlarında gönderilir. Onlar. ağ geçidi bir BİLGİ mesajı alırsa uygun bir ton çıkarır.
  • YUTUM BİLDİRİMİ - bant dışı(OOB) DTMF rölesi. veya buna da denir NOTIFY tabanlı bant dışı DTMF geçişi. Bu tip DTMF rölesi tonları iletmek için NOTIFY'ı kullanır. Bu yöntem SCCP telefonlarıyla uyumludur ve ağ geçidindeki FXS bağlantı noktalarına bağlı analog telefonlarla da kullanılabilir.
  • KPML - bant dışı(OOB) DTMF rölesi. Tuşa Basma İşaretleme Dili kullanıldığında, SIP telefonu numarayı basamak basamak gönderir. Bu yöntem şuna benzer: YUTUM BİLDİRİMİ tek farkı her rakamı ayrı ayrı vermesidir.
yönlendirici(yapılandırma-arama-eş)#oturum protokolü sipv2 yönlendirici(yapılandırma-arama-eş)#dtmf-röle ? cisco-rtp Cisco Tescilli RTP h245-alfanümerik DTMF Rölesi, H245 Alfanümerik IE aracılığıyla h245-sinyalli DTMF Rölesi, H245 Sinyali IE aracılığıyla rtp-nte RTP Adlandırılmış Telefon Olayı RFC 2833 sip-kpml DTMF Rölesi, KPML üzerinden SIP ABONE OL/NOTIFY sip-notify DTMF Aktarımı SIP NOTIFY mesajları yönlendiricisi aracılığıyla (config-dial-peer)#

Burada yalnızca CUCM ile çalışmaya uygun olan birkaç mevcut yöntem görüyoruz.
- RTP-NTE (NTE veya RFC2833);
- SIP-BİLDİRİM;
- SIP-KPML.