API ( Application Programming Interface ) روشی برای کنترل تجهیزات از طریق نرم افزارهای Third Party است. کاربرد آن در اتوماسیون و هماهنگی دستگاه با سایر دستگاه ها یا نرم افزارهای مجموعه می باشد.
به عنوان مثال شاید در یک مجموعه نیاز باشد که جلسات در یک سیستم نرم افزاری اتوماسیون اداری یا CRM زمان بندی گردد و تجهیزات ویدئوکنفرانس به صورت خودکار در زمان پیش بینی شده اترتباط را برقرار نمایند. در یک چنین سناریویی، نرم افزار اتوماسیون باید مستقیما یا از طریق یک نرم افزار واسط دستور برقراری تماس را به پایانه ویدئوکنفرانس ارسال کند.
سازندگان تجهیزات ویدئوکنفرانس به همین منظور نرم افزار پایانه ها را به صورتی طراحی کرده اند که مجموعه ای از دستورات Hyper Terminal یا Telnet یا SSH را پشتیبانی می کند. در روش های امروزی جهت سهولت کار این دستورات به صورت Text هستند که به راحتی قابل نوشتن، درک و خواندن می باشند.
برای استفاده از این رابط کافیست دستور متنی را از طریق درگاه شبکه یا پورت RS232 به سیستم ارسال کنید. در این نوشته ارسال از طریق پورت شبکه به زبان C# و برای پایانه Polycom HDX بررسی می شود. بدیهی است روش مشابه برای سایر تجهیزات معادل خواهد بود و تنها شکل دستورات و پورت مورد استفاده با مراجعه به مستندات آن تجهیزات تغییر می کند.
هر سیستم دارای یک پورت گوش به فرمان از نوع TCPListener است و کافیست شما در برنامه یک موجودیت TCPClient ایجاد و به این TCPListener متصل شوید.
private TcpClient socketForServer; //Create socket
(socketForServer = new TcpClient(IPtextBox.Text, 24
اگر این اتصال موفق باشد حالا می توانید با یک StreamWriter دستورات خود را به پایانه ارسال کنید
private NetworkStream networkStream; //Create stream
public static System.IO.StreamWriter streamWriter; //Create stream writer
networkStream = socketForServer.GetStream(); // Assign socket stream to networkStream
streamWriter = new System.IO.StreamWriter(networkStream); //Socket writer create
streamWriter.WriteLine(“preset near set ” + PresetIndextextBox.Text); //Save actualy preset to codec
streamWriter.WriteLine(“preset near go ” + Convert.ToInt32(RestoreIndextextBox.Text));
این مقاله تنها توصیف بخش اصلی این فرآیند است و طبیعتا برای یک برنامه کاربردی نکاتی مثل چک کردن برقراری ارتباط و بسیاری کنترل های دیگر مورد نیاز است. اما این اطمینان را به شما می دهم که استفاده از API برای اتوماسیون یک مفهوم انتزاعی و تبلیغاتی نیست بلکه کارهای خوبی را با استفاده از آن می توان انجام داد.
من خودم برنامه KAVA-VCRC را که محصول شرکت کاوا ارتباطات هوشمند می باشد با استفاده از همین شیوه تولید کرده ام.