Odesílání pomocí OLE

OLE (Object linking and embedding) je technologie pocházející od Microsoftu, tudíž ji lze využívat nejčastěji v produktech této společnosti. Jedná se o ovládání DreamCom Serveru programovými prostředky jiné aplikace (tzv. OLE Automation). Odesílání pomocí OLE provádí modul dcsole.dll, při instalaci je inicializován v systému a pak se spouští automaticky v případě potřeby. Ruční instalaci je možné provést pomocí regsvr32.exe dcsole.dll

OLE podporuje například:

  • MS Office - Word, Excell, Outlook, Power Point, Access, návod na používání OLE v těchto programech.
  • Windows Scripting (VBScript) - jednoduchý skriptovací jazyk, který je součástí windows, koncovka souboru vbs
  • ASP skripty používané na webu
  • MS Exchange Server
  • Vývojové nástroje Delphi, C++...

Začneme příkladem, odeslání SMS pomocí OLE:

Set SMSObj = CreateObject("DreamServer.SMS") ' Vytvoření objektu
cislo = InputBox("Zadejte telefonní císlo v mezinárodním formátu.") ' Zadání čísla adresáta
SMSObj.Send cislo, "Zprava z DreamCom Serveru." ' Zavolání funkce Send

Není to snadné? Chcete to ihned vyzkoušet? Spusťte program DreamCom Server, uložte tyto tři řádky do souboru test.vbs a spusťte ho (poklepejte na něj).

Syntaxe funkce Send

Send(const Phone, Msg, [Script, Name: WideString; Flash, Confirm, Identification: WordBool; SendTime: TDateTime; const Mode,
Subject, From_Email, From_Name, From_CellPhone: WideString; Repeat_Times: Int64]);

Povinné jsou pouze první 2 parametry, telefonní číslo a text zprávy.

  • Phone, telefonní čísla v mezinárodním formátu (+420603123456), nebo národním formátu (603123456). Pokud odesíláte email vyplňte zde emailovou adresu.
  • Msg, text zprávy libovolné délky, pokud je zpráva delší než dovoluje brána, je automaticky rozdělena a odeslána naněkolikrát
  • Script, tedy brána přes kterou se SMS zpráva odesílá. Pokud ho nevyplníte, vybere se automaticky podle nastavení operátorů (v adminu ALT+O). Pokud chcete odesílat přes mobilní telefon nastavte GSM, pokud chcete poslat email nastavte SMTP.
  • Name označuje jméno adresáta
  • Flash, true nebo false, pokud nastavíte true SMS zpráva bude doručena jen na displej telefonu (podporují jen některé skripty)
  • Confirm, true nebo false, pokud nastavíte true přijde Vám doručenka na email From_Email, (podporují jen některé skripty)
  • Identification, true nebo false, pokud nastavíte true, bude přidána do SMS zprávy vaše identifikace, (podporují jen některé skripty)
  • SendTime, čas odeslání zprávy ve formátu dd.mm.yy hh:mm, pokud nevyplníte zpráva bude odeslána ihned
  • Mode, nepoužívaný parametr
  • Subject, použijete jen v případě, že odesíláte email, jedná se o jeho předmět
  • From_Email, určuje email odesílatele, pokud není vyplněno použije se z nastavení programu
  • From_Name, určuje jméno odesílatele, pokud není vyplněno použije se z nastavení programu
  • From_CellPhone, určuje mobilní číslo odesílatele, pokud není vyplněno použije se z nastavení programu
  • Repeat_Times, určuje počet pokusů pro odeslání zprávy, pokud nevyplníte použije se hodnota z nastavení programu. Pokud se zprávu nepodaří odeslat ani na poslední pokus je přesunuta z fronty do historie a označena jako chybová.

Příklady:
nejjednodušší způsob - odeslání přes web s autodetekcí skriptu:
Send "+420604106026", "SMSka z Wordu je proste parada!"

odeslání pomocí skriptu smska na Silvestra:
Send "604106026","Stastny Novy rok!","smscz",,,,,"31.12.2002 23:59"
event. Send Phone:="604106026", Msg:="Stastny Novy rok!", Script:="smscz", SendTime:= "31.12.2002 23:59"

odeslání emailu:
Send "petr.omacka@seznam.cz","Ahoj Petre, posílám ti prostě mailíka...",, "Petr Omacka",,,,,"Email", "Pozdrav", "pavel@seznam.cz", "Pavel Novotny"

Pomocí OLE můžete odesílat i přes lokální síť či internet - technologie DCOM, postup nastavení:

Klientská část:

U klientských stanic stačí nastavit adresu serveru (IP adresu nebo jméno v síti). Jako klienta lze využít vlastní vytvořenou aplikaci, outlook, word.... Ve skriptu stačí upravit

CreateObject("DreamServer.SMS","Nazev_pocitace_kde_bezi_server")

a zapsat údaje do registru spuštěním: regsvr32 dcsole.dll

Na straně serveru je třeba provést instalaci COM+ pomocí dcomcnfg.exe (součást Windows 2000, XP, 2003).

Postup:

  • spuštění dcomcnfg.exe - vybrat Component Services/Computers/My Computer/COM+ application
  • Vytvořte novou prázndou aplikaci (New/Application), ve spuštěném průvodci vyberete prázdnou (empty) aplikaci, jako název zadejte DreamCom SMS Server (server application). Doplňte nějaký účet uživatele pod kterým proces poběží (pokud ponecháte interactive user - server bude funkční jen když je někdo přihlášen)
  • Rozklikněte DreamCom SMS Server, vyberte Components a vytvořte novou. Ve spuštěném průvodci vyberte Install New component a vyberte dcsole.dll, dokončete průvodce.

Možné problémy a jejich řešení:

  • Klient hlásí, že nemůže DreamServer.SMS nalézt na serveru. Ujistěte se, že je správně nakonfigurovaný firewall. (povolené porty 3000-4000)
  • Klient hlásí, že byl přístup odmítnut (access denied), nastavte sdílení složky, kde je nainstalován dreamcom server a ujistěte se, že máte vypnuté zabezpečení v COM+ objektu, nebo že máte správně nastavená přístupová práva.

Získali jsme nového partnera - smsbrána.cz odesílání za 0,81 Kč včetně doručenky.

Nová verze 5.89, informace

Nová verze SE 1.3, informace

Nyní můžete odesílat sms přímo z Excelu.

Odesílejte SMS z vašich webových stránek!