Logty Posted March 10, 2011 Share Posted March 10, 2011 Is there any way in autoit3 to call a phone number from your computer, kind of like skype? I know there probably is, but I have been having a difficult time finding out how. Link to comment Share on other sites More sharing options...
guinness Posted March 10, 2011 Share Posted March 10, 2011 Maybe there is a Skype UDF in the Example Forums, but I don't know of any way to call a Phone Number using the Native AutoIt Functions. UDF List: _AdapterConnections() • _AlwaysRun() • _AppMon() • _AppMonEx() • _ArrayFilter/_ArrayReduce • _BinaryBin() • _CheckMsgBox() • _CmdLineRaw() • _ContextMenu() • _ConvertLHWebColor()/_ConvertSHWebColor() • _DesktopDimensions() • _DisplayPassword() • _DotNet_Load()/_DotNet_Unload() • _Fibonacci() • _FileCompare() • _FileCompareContents() • _FileNameByHandle() • _FilePrefix/SRE() • _FindInFile() • _GetBackgroundColor()/_SetBackgroundColor() • _GetConrolID() • _GetCtrlClass() • _GetDirectoryFormat() • _GetDriveMediaType() • _GetFilename()/_GetFilenameExt() • _GetHardwareID() • _GetIP() • _GetIP_Country() • _GetOSLanguage() • _GetSavedSource() • _GetStringSize() • _GetSystemPaths() • _GetURLImage() • _GIFImage() • _GoogleWeather() • _GUICtrlCreateGroup() • _GUICtrlListBox_CreateArray() • _GUICtrlListView_CreateArray() • _GUICtrlListView_SaveCSV() • _GUICtrlListView_SaveHTML() • _GUICtrlListView_SaveTxt() • _GUICtrlListView_SaveXML() • _GUICtrlMenu_Recent() • _GUICtrlMenu_SetItemImage() • _GUICtrlTreeView_CreateArray() • _GUIDisable() • _GUIImageList_SetIconFromHandle() • _GUIRegisterMsg() • _GUISetIcon() • _Icon_Clear()/_Icon_Set() • _IdleTime() • _InetGet() • _InetGetGUI() • _InetGetProgress() • _IPDetails() • _IsFileOlder() • _IsGUID() • _IsHex() • _IsPalindrome() • _IsRegKey() • _IsStringRegExp() • _IsSystemDrive() • _IsUPX() • _IsValidType() • _IsWebColor() • _Language() • _Log() • _MicrosoftInternetConnectivity() • _MSDNDataType() • _PathFull/GetRelative/Split() • _PathSplitEx() • _PrintFromArray() • _ProgressSetMarquee() • _ReDim() • _RockPaperScissors()/_RockPaperScissorsLizardSpock() • _ScrollingCredits • _SelfDelete() • _SelfRename() • _SelfUpdate() • _SendTo() • _ShellAll() • _ShellFile() • _ShellFolder() • _SingletonHWID() • _SingletonPID() • _Startup() • _StringCompact() • _StringIsValid() • _StringRegExpMetaCharacters() • _StringReplaceWholeWord() • _StringStripChars() • _Temperature() • _TrialPeriod() • _UKToUSDate()/_USToUKDate() • _WinAPI_Create_CTL_CODE() • _WinAPI_CreateGUID() • _WMIDateStringToDate()/_DateToWMIDateString() • Au3 script parsing • AutoIt Search • AutoIt3 Portable • AutoIt3WrapperToPragma • AutoItWinGetTitle()/AutoItWinSetTitle() • Coding • DirToHTML5 • FileInstallr • FileReadLastChars() • GeoIP database • GUI - Only Close Button • GUI Examples • GUICtrlDeleteImage() • GUICtrlGetBkColor() • GUICtrlGetStyle() • GUIEvents • GUIGetBkColor() • Int_Parse() & Int_TryParse() • IsISBN() • LockFile() • Mapping CtrlIDs • OOP in AutoIt • ParseHeadersToSciTE() • PasswordValid • PasteBin • Posts Per Day • PreExpand • Protect Globals • Queue() • Resource Update • ResourcesEx • SciTE Jump • Settings INI • SHELLHOOK • Shunting-Yard • Signature Creator • Stack() • Stopwatch() • StringAddLF()/StringStripLF() • StringEOLToCRLF() • VSCROLL • WM_COPYDATA • More Examples... Updated: 22/04/2018 Link to comment Share on other sites More sharing options...
Logty Posted March 10, 2011 Author Share Posted March 10, 2011 Maybe there is a Skype UDF in the Example Forums, but I don't know of any way to call a Phone Number using the Native AutoIt Functions.Is there any way to call a phone number without using the skype UDF though? Like isn't there a dll or something you could use? Link to comment Share on other sites More sharing options...
Paulie Posted March 10, 2011 Share Posted March 10, 2011 No, there is no Microsoft API that comes built into Windows for calling a phone. You will need to use a 3rd party VOIP service like skype for sure. Link to comment Share on other sites More sharing options...
water Posted March 10, 2011 Share Posted March 10, 2011 (edited) In my company we use TAPI with a Siemens HiPath telephone system to dial a number when people click on an entry in the telephone directory. Something like: ; Setup TAPI Global $bLineFound = False Const $LINEADDRESSTYPE_PHONENUMBER = 0x1; Const $LINEMEDIAMODE_INTERACTIVEVOICE = 0x4; Global $oTAPI = ObjCreate("TAPI.TAPI") If IsObj($oTAPI) Then $oTAPI.Initialize Global $oAddresses = $oTAPI.Addresses Global $bLineFound = False For $oAddress In $oAddresses If $oAddress.AddressName = "CAP TAPI" Then $bLineFound = True ExitLoop EndIf Next EndIf ; Make a call $oMyCall = $oAddress.CreateCall($sNumber, $LINEADDRESSTYPE_PHONENUMBER, $LINEMEDIAMODE_INTERACTIVEVOICE) $oMyCall.Connect (false) Edited March 10, 2011 by water My UDFs and Tutorials: Spoiler UDFs: Active Directory (NEW 2024-07-28 - Version 1.6.3.0) - Download - General Help & Support - Example Scripts - Wiki ExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example Scripts OutlookEX (2021-11-16 - Version 1.7.0.0) - Download - General Help & Support - Example Scripts - Wiki OutlookEX_GUI (2021-04-13 - Version 1.4.0.0) - Download Outlook Tools (2019-07-22 - Version 0.6.0.0) - Download - General Help & Support - Wiki PowerPoint (2021-08-31 - Version 1.5.0.0) - Download - General Help & Support - Example Scripts - Wiki Task Scheduler (2022-07-28 - Version 1.6.0.1) - Download - General Help & Support - Wiki Standard UDFs: Excel - Example Scripts - Wiki Word - Wiki Tutorials: ADO - Wiki WebDriver - Wiki Link to comment Share on other sites More sharing options...
Carlo84 Posted March 10, 2011 Share Posted March 10, 2011 If your intentions are to call numbers not using any 3rd party service, no you cant. Either use a service(like skype) or whatever other service that has an api available, or start your own telecom service :-p perhaps skype has an api available somewherwe over here http://developer.skype.com/ _SplashProgressImage | _Regionselector | _IsPressed360 | _UserAccountContol_SetLevel | _ListSubFolders Link to comment Share on other sites More sharing options...
Logty Posted March 10, 2011 Author Share Posted March 10, 2011 If your intentions are to call numbers not using any 3rd party service, no you cant.Either use a service(like skype) or whatever other service that has an api available, or start your own telecom service :-pperhaps skype has an api available somewherwe over here http://developer.skype.com/Cool! I will try it later, are there any other options though? Link to comment Share on other sites More sharing options...
Carlo84 Posted March 10, 2011 Share Posted March 10, 2011 Cool! I will try it later, are there any other options though?i did say "perhaps" ;-) i didnt check, actually looking at it it seems to be an api for making extensions.Im not sure but isnt msn able to make phone calls to these days? i believe they do have an API available somewhere.If its for bussiness use, Water's solution would be perfect. _SplashProgressImage | _Regionselector | _IsPressed360 | _UserAccountContol_SetLevel | _ListSubFolders Link to comment Share on other sites More sharing options...
martin Posted March 10, 2011 Share Posted March 10, 2011 If you just want a script to dial the number and allow the converstaion to be carried on afterwards then a modem and some simple commands to the modem would be all you need. If the modem is on a COM port the udf in my signature would be able to dial for you. PionnerCast 1 Serial port communications UDF Includes functions for binary transmission and reception.printing UDF Useful for graphs, forms, labels, reports etc.Add User Call Tips to SciTE for functions in UDFs not included with AutoIt and for your own scripts.Functions with parameters in OnEvent mode and for Hot Keys One function replaces GuiSetOnEvent, GuiCtrlSetOnEvent and HotKeySet.UDF IsConnected2 for notification of status of connected state of many urls or IPs, without slowing the script. Link to comment Share on other sites More sharing options...
Logty Posted March 10, 2011 Author Share Posted March 10, 2011 If you just want a script to dial the number and allow the converstaion to be carried on afterwards then a modem and some simple commands to the modem would be all you need. If the modem is on a COM port the udf in my signature would be able to dial for you.Which UDF? do you mean the Serial Port communications one? also, could you post a small example code?Thanks!! Link to comment Share on other sites More sharing options...
martin Posted March 10, 2011 Share Posted March 10, 2011 Which UDF? do you mean the Serial Port communications one? also, could you post a small example code?Thanks!!Yes, the serial port communication one. Google "AT Command Set". These are simple codes you can send to the modem. If you use the example program I include in the download then you can just type the codes in by hand to try them out. When you see how it works you can write a script to do it for you. Serial port communications UDF Includes functions for binary transmission and reception.printing UDF Useful for graphs, forms, labels, reports etc.Add User Call Tips to SciTE for functions in UDFs not included with AutoIt and for your own scripts.Functions with parameters in OnEvent mode and for Hot Keys One function replaces GuiSetOnEvent, GuiCtrlSetOnEvent and HotKeySet.UDF IsConnected2 for notification of status of connected state of many urls or IPs, without slowing the script. Link to comment Share on other sites More sharing options...
Logty Posted March 11, 2011 Author Share Posted March 11, 2011 In my company we use TAPI with a Siemens HiPath telephone system to dial a number when people click on an entry in the telephone directory. Something like: ; Setup TAPI Global $bLineFound = False Const $LINEADDRESSTYPE_PHONENUMBER = 0x1; Const $LINEMEDIAMODE_INTERACTIVEVOICE = 0x4; Global $oTAPI = ObjCreate("TAPI.TAPI") If IsObj($oTAPI) Then $oTAPI.Initialize Global $oAddresses = $oTAPI.Addresses Global $bLineFound = False For $oAddress In $oAddresses If $oAddress.AddressName = "CAP TAPI" Then $bLineFound = True ExitLoop EndIf Next EndIf ; Make a call $oMyCall = $oAddress.CreateCall($sNumber, $LINEADDRESSTYPE_PHONENUMBER, $LINEMEDIAMODE_INTERACTIVEVOICE) $oMyCall.Connect (false) One quick question about your script, what is variable $sNumber? Link to comment Share on other sites More sharing options...
water Posted March 11, 2011 Share Posted March 11, 2011 It's the number you want to call. But there is more to be done to make it work. The telephone system (in our case Siemens HiPath) has to be connected to the IT network. The TAPI driver (provided by Siemens) has to be installed on the local computer and you have to provide the information which computer is related to which telephone so that your telephone rings when you dial. My UDFs and Tutorials: Spoiler UDFs: Active Directory (NEW 2024-07-28 - Version 1.6.3.0) - Download - General Help & Support - Example Scripts - Wiki ExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example Scripts OutlookEX (2021-11-16 - Version 1.7.0.0) - Download - General Help & Support - Example Scripts - Wiki OutlookEX_GUI (2021-04-13 - Version 1.4.0.0) - Download Outlook Tools (2019-07-22 - Version 0.6.0.0) - Download - General Help & Support - Wiki PowerPoint (2021-08-31 - Version 1.5.0.0) - Download - General Help & Support - Example Scripts - Wiki Task Scheduler (2022-07-28 - Version 1.6.0.1) - Download - General Help & Support - Wiki Standard UDFs: Excel - Example Scripts - Wiki Word - Wiki Tutorials: ADO - Wiki WebDriver - Wiki Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now