Bağlantıları atla

FileMaker ve MBS eklentisi ile SMS gönderin.

smstrade SMS Ağ Geçidi

FileMaker ile SMS mesajları göndermeBu teknik makalede, MBS eklentisini kullanarak doğrudan FileMaker uygulamanızdan nasıl SMS mesajları göndereceğinizi açıklıyoruz.Veritabanı programın içinden. Bunu yapmak için, beş parametre ile çağırarak herhangi bir alıcıya herhangi bir SMS mesajı gönderebilen kısmi bir komut dosyası oluşturuyoruz. Bu örnekte, SMS mesajları göndermek için ağ geçidi olarak Alman sağlayıcı smstrade'i kullanıyoruz.

Bu hizmet, Alman şebekelerine mesaj başına 1.6 sentten başlayan fiyatlarla SMS mesajları gönderilmesini sağlar; SMS mesajları, mesaj başına 4.9 sent artı her durumda 19% KDV'den başlayan fiyatlarla dünya çapında gönderilebilir. Kayıttan sonra, test amacıyla gönderilebilecek 30 ücretsiz SMS mesajı ile başlanabilir. Bu sağlayıcıda aylık temel ücret yoktur. Aşağıda, doğrudan FileMaker veritabanınızdan otomatik olarak nasıl SMS mesajları gönderebileceğinizi öğreneceksiniz.

Smstrade ile kayıt

SMS ağ geçidi üzerinden SMS mesajları gönderebilmek için öncelikle smstrade. Kayıt ücretsizdir ve başlangıç için 30 adede kadar ücretsiz SMS mesajı gönderilmesini içerir.
smstrade SMS Ağ Geçidi

SMS ağ geçidi için ana veriler

İlk olarak, FileMaker veritabanınızda SMS ağ geçidi için erişim ve ana verileri içerecek üç alan gereklidir. Bu alanlar tüm FileMaker çözümünüzde kullanılmak üzere global olarak uygulanır. Alternatif olarak, alanlar yerine global değişkenler de kullanabilirsiniz. Senaryo başlatılmalıdır. Ana verilerin SMS mesajları göndermesi için aşağıdaki alanlar gereklidir:

  • Gönderen - SMS'in gönderici kimliği, örneğin '0049123456789' veya '+49123456789'
  • Ağ Geçidi Anahtarı - smstrade.de adresinden kayıt olduktan sonra alacağınız ağ geçidi anahtarı.
  • Rota - smstrade üç tarife seçeneği sunmaktadır:
    • temel Almanya içinde SMS mesajları göndermek için
    • altın herhangi bir gönderici kimliği ile dünya çapında gönderim için
    • doğrudan doğrudan şebeke operatörü aracılığıyla dünya çapında gönderim için

Veritabanınızda çözümünüz boyunca erişebileceğiniz üç alan veya global değişken oluşturun. Smstrade'e kaydolduktan sonra, ilgili alanlara ana verileri girin. Almanya içinde SMS mesajları göndermek için 'temel' tarife seçeneğini öneriyoruz.

SMS göndermek için komut dosyası

Bir sonraki adımda, tüm veritabanından herhangi bir alıcıya herhangi bir SMS mesajı gönderebileceğiniz bir komut dosyası programlayacağız. Komut dosyası daha sonra aşağıdaki beş komut dosyası parametresi ile çağrılabilir:

  • Alıcı - Alıcının telefon numarası, örneğin '0049123456789' veya '+49123456789'
  • Metin - SMS mesajının metni (bağlantılı SMS olarak en fazla 1.530 karakter)
  • Gönderen - Gönderen Kimliği, genellikle ana veri alanından oluşturulur.
  • Ağ Geçidi Anahtarı - Ağ geçidi anahtarı, genellikle ana veri alanından oluşturulur.
  • Rota - Rota (tarife), genellikle ana veri alanından oluşturulur.

Ana veri alanlarından 'Gönderen', 'Ağ Geçidi Anahtarı' ve 'Rota' alanları oluşturursanız, kod öncelikle bu alanların da korunup korunmadığını kontrol etmelidir. Bu nedenle, kodumuz başlangıçta ilgili bir sorgu içerir. Aşağıda, MBS FileMaker eklentisinin desteğiyle SMS mesajları göndermeye yönelik tüm komut dosyasını bulacaksınız.

Kod parametrelerini geçirme

Bu kod çağrıldığında, beş kod parametresi, değerleri kesme işaretiyle (|) ayrılmış bir dize halinde aktarılır. Dizeyi ayırmak için bir Kendi işlevi "StringTrennen" olarak adlandırılır. Kodu gösterildiği gibi kullanabilmek için önce aşağıdakileri oluşturun Özel Fonksiyon (ayrı işlev) FileMaker Pro Advanced'de:

StringDisconnect (String; Sayı)

Eğer (sayı = 1;
   CharacterLinks ( String; (Position ( String; "|"; 1; 1))-1);
CharacterCentre ( String;
(Pozisyon ( Dize; "|"; 1; Sayı-1))+1;
(Konum ( Dize; "|"; 1; Sayı)) - ((Konum ( Dize; "|"; 1; Sayı-1))+1)
)
 )

SMS göndermek için komut dosyası

Yukarıda bahsedilen özel fonksiyonu eklediyseniz veya karakterle ayrılmış dizeleri ayıklayabilen başka bir özel fonksiyonunuz varsa, kod düzenleyicide yeni bir kod oluşturun ve kişisel adlandırma şemanıza göre alt simge olarak adlandırın (örn. 'ts.SMS_Versand').

Eğer [NOT IstLeer(Gönderen) AND NOT IstLeer(Anahtar) AND NOT IstLeer(Rota)]
   #Skript parametreleri: Tel | Metin | Kimden | Anahtar | Rota
   Değişkeni ayarla [$tel_nr; Değer:StringTrennen(Get(ScriptParameter); 1)]
   Değişkeni ayarla [$text; Değer:StringDisconnect(Get(ScriptParameter); 2)]
   Değişkeni ayarla [$from; Değer:StringDisconnect(Get(ScriptParameter); 3)]
   Değişkeni ayarla [$key; Değer:StringDisconnect(Get(ScriptParameter); 4)]
   Değişkeni ayarla [$route; Değer:StringTrenn(Get(ScriptParameter); 5)]
   #
   # Aktarımı başlat
   Değişkeni ayarla [$r; Değer:MBS("Trace")]
   Değişkeni ayarla [$to; değer:MBS("String.EncodeURLComponent"; $tel_nr; "utf8")]
   Değişkeni ayarla [$from; değer:MBS("String.EncodeURLComponent"; $from; "utf8")]
   Değişkeni ayarla [$body; Değer:Exchange(MBS("String.EncodeURLComponent"; $text; "utf8"); ""; "+")]
   Değişkeni ayarla [$curl; Değer:MBS("CURL.New")]
   Değişkeni ayarla [$result; value:MBS("CURL.SetOptionpost"; $curl; 1)]
   Değişkeni ayarla [$result; Değer:MBS("CURL.SetOptionVerbose"; $curl; 1)]
   Değişkeni ayarla [$result; Değer:MBS("CURL.SetOptionURL"; $curl; "https://gateway.smstrade.de")]
   #
   # Giriş XML ve SMS ayrıntılarını ayarlayın
   Set variable [$content; value: "key=" & $key & "&" & "to=" & $to & "&" & "message=" & $body & "&" &
   "route=" & $route & "&" & "from=" & $from & "&" & "charset=utf-8"]
   Değişkeni ayarla [$content; Değer:MBS( "String.ReplaceNewline"; $content; 2 )]
   Değişkeni ayarla [$result; Değer:MBS("CURL.SetOptionPostFields"; $curl; $content)]
   #
   # Aktarımı başlat
   Değişkeni ayarla [$result; Değer:MBS("CURL.Perform"; $curl)]
   #
   # Kontrol sonucu
   Değişkeni ayarla [$$debugText; Değer:MBS("String.ReplaceNewline"; MBS("CURL.GetDebugAsText"; $curl);1)]
   Değişkeni ayarla [$$resultText; Değer:MBS("String.ReplaceNewline"; MBS("CURL.GetResultAsText"; $curl);1)]
   Değişkeni ayarla [$r; değer:MBS("CURL.Cleanup"; $curl)]
Aksi takdirde
   Kendi diyalog kutunuzu görüntüleyin ["SMS ağ geçidi ayarlanmamış"; "Ana veri girilmemiş!"; "Tamam"]
Son (eğer)

Komut dosyasının ilk bölümünde, iletilen komut dosyası parametre dizesi önce ayrı değişkenlere çıkarılır. İkinci kısımda, MBS'nin CURL motoru FileMaker Eklentisi başlatılır. Üçüncü bölüm, aşağıdaki dizeyi oluşturur Sunucu SMS ağ geçidinin gönderilir. Gönderme işlemi "Aktarımı başlat" alt simgesi içinde gerçekleşir. Son kısımda, gönderim durumu $$result ve $$debug global değişkenlerine yazılır ve gönderim sonrasında buradan okunabilir.

Demo veritabanını indirin

Tüm kaynak kodunu C=64 stilinde yazmak zorunda kalmamanız için, bu makalede açıklanan çözümü size bir Örnek dosya indirilebilir. Örnek dosya şurada fmp12 formatı ve yüklü FileMaker 12, 13 veya 14 kullanıyor MBS FileMaker Eklentisi önceden. FileMaker Pro Advanced lisansınız yoksa, yalnızca normal FileMaker Pro lisansınız varsa, aktarım dizesini ayırmak için gereken özel işlevi zaten içeren bu örnek dosyayı kullanabilirsiniz.

SMS örnek veritabanını indirin

Bir yorum bırakın

  1. Kulağa harika geliyor. FileMaker üzerinden SMS ALMANIN da bir yolu var mı?

    Çok teşekkür ederim,
    Matthias

Bu sayfayı paylaşın:

Şirketiniz kadar esnek ERP yazılımı.
Size tavsiyede bulunmaktan memnuniyet duyarız.

Mac, Windows ve iOS için özelleştirilebilir ERP yazılımı.

Buradasınız: FileMaker ve MBS Eklentisi ile SMS mesajları gönderme