Sender and Receiver Clients
If you are communicating with the IAS API directly (recommended), you can skip this section.
OCAS has built two Windows services (C# .NET Framework 4.6) to help facilitate
the two-way communication between the IAS API and the College's SIS systems. The clients
handle all of the HTTPS/TLS and communication with the IAS API HTTP Endpoints. Beyond that, you need to
build the integration between sql table data and your SIS.
Sender Receiver Diagram eyJ2ZXJzaW9uIjoiMSIsImVuY29kaW5nIjoiYnN0cmluZyIsImNvbXByZXNzZWQiOnRydWUsImVuY29kZWQiOiJ4nO1d13JcdTAwMWJLkn2/X8HQvOxGXGZqy5t5o1x1MDAxN71cdTAwMDWN9m4wQFx1MDAwMCQhwpBcdTAwMDBoJ2a+fU82XHK6XHUwMDFiaHTTXG66Q0hBiTCF6q7MkyezMrP++cfU1Lf+3UX92z+mvtVvq5Vmo9at3Hz7Oz1/Xe/2XHUwMDFhnTZektHvvc5Vt1x1MDAxYb3zrN+/6P3jf/5n8Fx0Vu20XHUwMDFlPlVv1lv1dr+H9/0vfp+a+mf0XHUwMDEzrzRq9NnLaVe9nt3bXFzbv1PH5drK/s5K+zT6aPSmp8l069V+pX3arFx1MDAwZl66xfNCK8k8t5x7r7TTXjy/fIeXS1pb5oQ3XltcdTAwMWKcXHUwMDEzzj6/ftOo9c/wXHUwMDFlI1x1MDAxY1x1MDAxM1p646KfNjy/46zeOD3r4y1We/b4cvRTP7/lYUr/mOLPz/T63c55fbbT7HRp3n/j3p2Y48GsjyvV89Nu56pde35Pv1tp9y4qXdymwftOXHUwMDFhzeZO/675cIMr1bOrbuzaXHUwMDFmvmX/8Vx1MDAxMmTq+efP9TpYjsGn8LWnZ+16j1x1MDAxNmNwozpcdTAwMTeVaqNPt0vwwXXQXHUwMDFjL5Zq0br9X3r8s0r34nGcbz36JTazep3WVVhlJbfWXGbmNpBcdTAwMWblVPrZ9U47kiUpuOJcdTAwMGWfXHUwMDFjzKTRm4NcdTAwMTD1o2FPKs1efXAv6TbOXHUwMDBmXHUwMDA0rH3VbD6/eHVRq/RcdTAwMWbnYnXwwmBcXDFcdTAwMTi22Wifpz/T7FTPXHUwMDA331x1MDAxMz37r7+Pktru3vTSxqaavulMl5dv92zLVNvLw1Lbr9/2U1x1MDAwMmtcdTAwMTRkSXJcdTAwMTm00YEr5VJcdTAwMDKrNFx1MDAwYkp6x5XX3DgzJK8ymGFcdFXmSyRzRVx1MDAxMlx1MDAwMFx1MDAwMcmTWo9cdTAwMTBJqYaefVx1MDAxMkmAhuXCXG4l310klZKc21x1MDAxN4jkQMJIsnCpXHUwMDFis9M7U0vtk25cdTAwMDX34araTyzJSafd32ncR3rlXHUwMDEzzy5UWo3mXeKe04jTzcYp3Y1vzfpJbOFxQ/pcckD788v9zkVcXHx6dcw8+paBXHUwMDE4VvEtXHUwMDE1PNtdqqUvqdNtnDbalebumGtcdTAwMTijeys/j/zJfqss7mfL983Dyzu1sFUtbDFww1x1MDAwM1x1MDAwYtp7a2BcdTAwMTAs1z6lgNowXHUwMDE5OMdya4E3x1x1MDAxNPRJXHUwMDAzrVx1MDAxNWxgMJyww/poXHJ/gULWMFx1MDAxZn7yn6eQXFxCXHK0MHaUQsbuYEohPTBUWGf1r9fHMWK6fL/V2Fj4ubOsu2tz61x1MDAxOGplafGoiImQPM9EcGa1w23jXHUwMDAxpCdcdTAwMDZLz1x1MDAwMsrdsEi+yET8h0qk5M4qpyVcdTAwMWZpXCJ4tkSCXHUwMDEzSlx1MDAxYsPYyTFcdTAwMTBYr2b9tJ7C16mbRv9sKlx1MDAwMt6dzkn/pvJcdTAwMWKajeJXNlJLx9iJwZpcdTAwMWLhs9ZcXFmjjOJFeOpcdTAwMDMgfN+cL1912qWbsLdrb3/2v99cdTAwMWTf3k6O6lxmg0JcdTAwMDRG1qm4g+VcdTAwMDaa8WwuOdcy+GCM9lakZjaAXHUwMDE0XHUwMDFkXGb47Msh5Vx01JxOWt1RflrMZjxptFx1MDAxMME7XHUwMDFm1+jXYkRac2NcdTAwMWZcdTAwMWX2NVx1MDAwNGj6O/lcdTAwMWHtXHUwMDBibvZa+z23XHUwMDFj9url8npt9mJ7vpAh8dIx5ZxcdTAwMDakcVx1MDAxYvd9XHUwMDFm7YhiZuTSPd1yJfTwTX6RXHUwMDFkee2i/2pleCuzkVx1MDAxNkLqhVx1MDAxZkJcdTAwMGZ6MSa6aVeDXHUwMDA3K1x1MDAwNbRssFSTbkn+XCJmY7yNiL5w1FJqnmlcdTAwMWaAXHUwMDAxXHUwMDE0c5KF1vJB0zeX+0u3q+d3veuTy+55u31cdTAwMWO+V3YzlKLa7fR6pbNKv3qWpVx1MDAxOGks/jgrIYJcdTAwMGXMXHUwMDE5q4XXloxEyqlcdTAwMTJOMFx1MDAxNVx1MDAxNJwuOOBeXHUwMDA1b1JTi1x1MDAwNSeix1jE+JuU/rhuh01cdTAwMDT8MnhcdTAwMTSAOlx071x1MDAwMeZ5XHUwMDE4vLRiwnEundHWelx1MDAxYrNmj5qrhILXp/XnmovXK2evX+n2Z1x1MDAxYe1ao32a/ki9Xct4pVx0wZ/ttFqNPqax2Wm0++l3RONOd7udm7N6ZUinMHLma1x1MDAxNzTcINxLj8H/plx1MDAwNoJcdTAwMTP98vz///v7yHfD1fHccKdgwsmUy8SnXHUwMDE5OUBcdTAwMDLuXHUwMDEysVx1MDAxNMiWV0XGU/A4heFcdTAwMTRoXGY2Pl5JgGHAdmtcdTAwMWScgnSEXHUwMDEw8sbLkjh6YDTFnXOYJLiLUNJcdTAwMTWYnVx1MDAxNrhW7q22XHUwMDEyU9Hx8ZRg1nvtpXFcdTAwMTJTc7rIxdKNUcJcdTAwMDXrhfSJ6UlMXTincLXCXHUwMDA0/JM7Pc6k5Hivd4JcdTAwMWJosVx1MDAxZbiZT1x1MDAwM8JcdTAwMWQ18Fh5XHUwMDEw3nKZO2CGLPxcdTAwMTH/98WYbLxLP/2Eybil1kvhi5N2eX4zu7S1X95aalx1MDAxZrm9XHUwMDFm3bmjmfLKZEIyoFxyklx1MDAxZCT5JT64MIC/R4i2zMBNdVx1MDAwMJtcdTAwMTC4XHUwMDE5QDBccohcdTAwMTe5kpBcdTAwMTSsXSRcdTAwMTZcdTAwMWZcdTAwMDXQMJlcdTAwMWHKTJRcXLlcdTAwMTFcdTAwMWNcdTAwMWVcYs2hg6CtnjZcdTAwMDJE7I49ILTRjktcdTAwMGb0/kLoXHRBaKBbkMFcdTAwMWGjXHUwMDAwglwi8WlCaFx1MDAwMddcdTAwMTE3XHUwMDExXHUwMDAwXGI0XHUwMDE0RcZcdTAwMDNkalx1MDAwMk54LjyJgVx1MDAxMURcdTAwMWJcdTAwMGbwXHUwMDE2XHUwMDFhvotcdTAwMDNcZlx1MDAxNoDo0TJHXHUwMDBmXGYnvYbSKHi4uiCoKmO4XHUwMDE0ZCWMcCaBgYTRUlx1MDAxOZA+5blcdTAwMDTqXHUwMDE3MnB4XHUwMDFmXHUwMDA0XGY2XHUwMDA0XHUwMDAyn0JUOFx1MDAwM1x1MDAxMn+Mg3mBXHUwMDEzV1x1MDAwMKJFgP0wcD4s0E6ZNOaLwD1GJLfQSJN7uVx1MDAxZlx1MDAwMtFcdTAwMTCHTIS2sL+W61wisd1cdTAwMDeEPp/v9kpcdTAwMGLtXHUwMDFm99f1u1x1MDAxZiuHXHUwMDA3m0bwclx1MDAwNkKnUDaJzTr1/Gux2eeyZSNcdTAwMDNcdTAwMTZWkevNwUNTjrll8My1gqXS3jhcdTAwMTe7V++1kTfYSrRcZl/CIX08kFlcdTAwMWaxk1x1MDAwMYlyJJuwLCA4XHUwMDBl3DhmXHUwMDFhXHUwMDFlXHUwMDExXHUwMDE5dEVcdTAwMTJcdTAwMWRcdTAwMTiJyM8y821x5X5zteRXL8vdbu9kttet3Vx1MDAxZJlvT5I0XHUwMDBluKNrelx1MDAxZHA73GE9sHVfwP30yF58epRGrPt7aT/P5GdCXHUwMDA25aQxrshW6+M2y53emp+ZaVx1MDAxZC7d3O9cdTAwMWQps9LfqCxMuPrTXHUwMDA2XHUwMDBlbjlgWnpu09rPlZUgcFx1MDAwNpRdxFx1MDAxY+n3Vn7tXHUwMDE4/FxiK4WEV4HvXHUwMDFjofvBMEP7IXDopYPdiHntT3EufFQrXHUwMDFky/L4Uv3JV/2SsCwokJ3gQFx1MDAwNST3KT9YMyM8SFiANmpcdTAwMTC73PGkYkpcdTAwMDdcdTAwMDVOXHUwMDA2blx1MDAwNMs2cC5cdTAwMWW+XHUwMDBlrEhcdTAwMTGJNrBmQalcdTAwMDJcdTAwMDN6XHUwMDE4SOtcciTLumB0grSVpGaK8otcdTAwMDQnyiRCrttfkpY5XHUwMDE1hFxyzsI1NSpBs0pGkaNcdTAwMWPIqeZe43vzx1x1MDAxM9BcZm1h87hcbrRTm6BZJetcdTAwMTiedpzDXHUwMDBig21cZrk0q+SwIFx1MDAxNFx1MDAxYlx1MDAxM4o4b3I5vGJGglx1MDAwYmDyXHUwMDAyt1flTk+AVEpoLJg3KLSXKrlcdTAwMWNDap07XmCGOK2lrVFOe+/p8TSeJeqG6YF1vpeh0JmBcssl/opcdTAwMTfYie3jtr/fbq39mF+tlde/XHUwMDFmtFb61ftcdLdcdTAwMTNcdTAwMDa+XHUwMDA2qLCkcCVkY3CxUVA1SCbgXHUwMDE0XHUwMDE4UC94XHUwMDFi8cTF9zZcdTAwMTVcdTAwMDJOudPAXHUwMDAzXHUwMDA1L47SqEbZXG5PMmdB3p3wWsao5JOtXHUwMDEwwftcdTAwMDBfa/DKl634XHJsRWBcdTAwMDFmXHUwMDFl2Fx1MDAxZICQXHUwMDEwxaQ/rjSDXHUwMDBiXGa2opSUSvpcdTAwMDLYXHUwMDBldDKaXHUwMDBiysRcdTAwMDOsKVx1MDAwMHhcdTAwMWGMnfFcdTAwMTQ/XHUwMDA01FlcZp5cdTAwMGaehnlcdTAwMDXw9kFS8NEno8Qla6BFXHUwMDAyQC2iOK3NdaJcdTAwMDNT8FC5g2umnVx1MDAxM6lcYoSn+ZmgveSCsopzo5ywPbiWIFxmXHUwMDA3XHUwMDEwOy6Ss1x1MDAwYopZfImFXHUwMDE2XHUwMDBiXHUwMDFlhMq1ZdBF2o23XFx5Z1xyiGJyOFx1MDAwZmy3XHUwMDE2Zlx1MDAxZIZOS5NcdTAwMWJcdTAwMWVxmnFcdTAwMGJXlKJcdTAwMGJOiqDTwyW1Ot/0gDw40Fx1MDAwMFxm5lx1MDAwMFx1MDAxNiY1PcGIduBcdTAwMDKUXHUwMDExQITcXHUwMDAwO7xcdTAwMTNcdTAwMTDiIGGWXHUwMDFkbDT3ybvnQZdhd7iBpFhAS/78lGJkw7B4XHUwMDE2YiuSlsxQdMmRXHUwMDE4gZxzK2OW9m2WTGZml1x1MDAxYU0pXFxxXHUwMDA2nWfJ+nK3sXtxNX+0Xrm4n7kq7Zj7XHUwMDBiOdmWXGauXGaD2+et8SpcdTAwMWXketxcdTAwMWTUhlx0UFFcdTAwMGVBhCWD9n+cJYM4XHUwMDE5S7E75T2okVx1MDAxOVx1MDAxMYE2lmlNXCJcdTAwMDL1XHUwMDA2feNDe4SYLzFJKSbX6/mKVFx1MDAwZr9b0P5cdTAwMDfl6Vx1MDAwMYJcdTAwMTWATqecXHUwMDE0zlx1MDAxY1x1MDAxMFx1MDAxOLSek1x1MDAxN4CfuUjMXHUwMDE5xFx1MDAwNLxIU/hLJLfXINUsaHBwMJ7AXHUwMDAxOzpcdTAwMTebPFxmXHUwMDBmxamB6jC0aTvBYGu0sVx1MDAxMkRcdTAwMWOiV8RcdHBcZkgr8VBcdTAwMWOmJz6aXHUwMDAyc4TvJCEpXHUwMDFhfiCws1xiXHUwMDBlj1ac6E5cdTAwMDA3XHUwMDAzrFx1MDAwM/FU4lxiPMZcdTAwMDLeXHUwMDA2nLGspDRwXG7wXHUwMDAz/lx1MDAxMlx1MDAxN+DHYfvyambxqlLfuT2oymVzvHZ9NtnAXHTfjXmYJJArLJM26VhcdTAwMTG0XHUwMDFkvIxIXHUwMDBmXHUwMDE1KNj0xN5cdTAwMGY4QVx1MDAxMzRm48hukqc3gOhn3Fx1MDAxNMJcdTAwMTNcdTAwMGaDfFxisFx1MDAwMHiCQ+FcIni4kktjRydXfOHmZOImxU5AXHUwMDBmQZe0gkHUPJU0XHUwMDAxyYAv7qhAXHUwMDA2pN7m51x1MDAxMWjNPNxJY2S0jeeSuFx0j8JcdTAwMWF4vZ42sVx1MDAxZJhs3nCGdiCBmEBhwHdQKklh4U+AuFx1MDAxYVx1MDAwZvpccvYhcnGThsMoXHUwMDAy3Fx1MDAxMFSE+1x1MDAxNPvnjJJNlNGBXHUwMDAyZCqX/UfQKFxmUbxoR06m7lx1MDAxZac9PiFxV4OBjudOXHUwMDBmgOCkXHUwMDA3/VxiXHUwMDA2XHUwMDBmXHUwMDFl0pE2w+BcYllcbo7gr3S5XHUwMDA02zBcbreDm1HWofIqnVx1MDAxMZPW6bzxSphcdTAwMDFwmcAqcFxuzoX0XHUwMDA2LlxmiYdcdTAwMDNcdTAwMTg8qF7wukDwXHUwMDBlXHUwMDFlXHUwMDBmXHUwMDA1xOFdOkWeZvpcdTAwMTZSsNBcdTAwMDW4YrhgXHUwMDFmiu5TPFx1MDAxOFx1MDAwNbfQ3lirb16du8Pd6vTxwtw978ZwclxcJZ+ke6Now1x1MDAxNcLCU5WnXHUwMDAydEORwVx1MDAxNLTmcuCmXHKya+GKwFx1MDAwZlx1MDAwNsM0XHUwMDEwXVx1MDAwMf9lXHUwMDA0pnKVqDyNXHUwMDE5gFx1MDAwMnV++ZlcdTAwMWH5ybdcdTAwMDWSWiYwXHUwMDAxV1x1MDAwNlx1MDAwZY2ysSrSWIJQyNx9XHUwMDE2XHUwMDFha2W9XGbvX+pHO20xL/CVpX5/tpfa/Xq3Xelj1pXm1PTFRbNRjX77s71T7143qlx1MDAxOVx1MDAxObmOWYGb4p5+usS78jJ0q3X62lfk6IZM+X1hgWChK1x1MDAxZssx681m46I3kmbq7JRs6GZUXHUwMDBiWDwhQVVcdTAwMWFL1Va4WWjt/rz4rvdbqy2tX0MzPy9/XHUwMDE3roBgUV4u6Fx1MDAxZLzeVPou6CXjhrg2ljDA+rwtfddbX1x1MDAwZqOzw2gzkTwgXHUwMDBlXHUwMDBiZ0ZcdTAwMTSxZb/luaYwUHWgVnlR5oVOo3Hta53bxtZK78pd3O/OVFx1MDAwN1x1MDAwMk7y2V2935wtXf7w89drzdLcpV+5/fnRJDRKM1x1MDAxYlxc1CvrRlxuSDy8viyJt5hcdTAwMDSM7Fx1MDAwYpIkXHUwMDBmW9M3R2F58c7OqevT45vNufmT44mXeHjbQSvHIdmQpbTEc9pcdTAwMDNcdTAwMDVWKu7B8+RcdTAwMTjPKl/ib85cdTAwMWH9+rC8a8skqCZcdTAwMDan7Vx1MDAxYtzxYXnPfsuTvFx1MDAwN4pcdTAwMWOHeMb9aHl/vTi/NWvy3cQ5K0hcdTAwMDAyniXLoN4gXHUwMDAxSlx1MDAxN6nMfJDlWX5YaZ+0yitcdTAwMWKldmNn7bZ9N38z8ehtJIPv43SgNHTvU1x1MDAwNcOKXHUwMDFiRtFMXG7DaueMeVx1MDAxM3xnXGKzoLg/bIOToOJcdTAwMWHYPGKPMHJcdTAwMTVhSkXQ8Ky00MObhDpoI8nMfJg4fyY6J135v26IIHvx6VFcdTAwMWFe98GAf8T/fanm6zGpZJwmQtHewqrfXG79teb3pcrG6aGeX2hfXHUwMDFlbM8t7/9cdTAwMDaqbyg+qILFnU1pPtwgplx1MDAxY3lcdTAwMWZWOlwidlx1MDAxZsLbomxcdTAwMTNcdTAwMWSlwihBUdnBtVxmVN8y76M0ZkxWqTCs+Vx1MDAxNr49mJ3MXHUwMDBiXHUwMDBlfmn+YNxfr/nZa0+P0tCyv1Dxx1x1MDAxNufL7F1VyXWgtFZTvPiy0drfXTxakMfVTXM1u3Ve3VvZmJ407TfMgMxwJ02wxvJYe6hcdTAwMDc0XHUwMDEwkpJcdTAwMDNcdTAwMWNlYth4ifwjqbVcZlxcwEexJlx1MDAxYmJcdTAwMWXAe6JcdTAwMDHVnFx1MDAwN6Ge3TQ+itaymFx1MDAwZmetXHUwMDE42mJccjq4wPWvKPJ5N7o6XnbtUGO054iD0ULq+L5znuie6sV+a3F7927vfGb5+KhV9Su9+UlcdTAwMTNdzixlaFx1MDAwNKmcotREXHUwMDFlUrJrJVx1MDAxM3hcdTAwMDfloXgu1ZBHRlx1MDAxMSwuIDBcdTAwMTSZt1x1MDAxMyy8XHUwMDBlXG7oQrys4/dcdTAwMTHeXHUwMDA3gbqud+TC8cpt/25/b9otqbXL6lGs6nFMy1x0pXSid1FqXHUwMDExpWRcdTAwMDAt3Fx1MDAxZVx1MDAxM+Un2eH2dmLULX9Ze7v/3LC3cMJ7SaVfIyDHZzZdXHUwMDE0XHUwMDE0QpDKXHUwMDE3XG5yvqLtxKuI01PYW0y1XHUwMDFh7av+uzSaeHVcdTAwMTj7da0mnqc+RtVcdTAwMWF7y3W7Ozd3tKBvV3Z/1m+m9dl6MVXjYzvzKMq6XHUwMDFm2yZMjnDRvzStoKaRJYNBXHUwMDFiqWlijFtcdTAwMWFcdTAwMDJMO4jwJKrav39DXHUwMDFk+/c45Zo5sutL/N7Z1lx1MDAxMT/wrd5N2NhQw8qV2SrSXHUwMDFikFx1MDAxNkWdXFyC8CG1w1x1MDAwYtCkVNdnYzaitzBWZFjFqFx1MDAxOUq8kVVcZnXzVa5cdTAwMWFkRVbGk5uTipEmKyP0k5opmXfTNNAxY6l2YJSiqWybRu1o4FxiXHUwMDE12sZ4maI5IYN7p+ZeW5WdjZ9nrux4Y2Hz9L53cCnXV1x1MDAwYsE/XHUwMDBmhjlFxfDSKpX29YR3zMXbmFx1MDAwZcsmp9r32ObssKRaXHUwMDBiLlx1MDAxN4KFXHUwMDA3r6Xxg0T997Fcclx1MDAxMyGo79rPlPogKVx1MDAxYkb1vFx1MDAwZZk7zM54Kj3T7y+ob7dcYlFcdTAwMWbF7Xq13sCk/2z/XHUwMDE3W5/fndpvtGudm97U4677f4+2XHUwMDFhXHUwMDE27lx1MDAxYfXeU5Rap+Ku/IdaXHUwMDExkymzL+1InHvZI9X6rZGrXHUwMDAwxLLxtLNcXO9/555cdTAwMWbI0t6lsKW75bnze9O2pzNcdTAwMTOD/lx1MDAxOXFrXHUwMDBlfOJw5GXUbsumk6dcdTAwMWPT8SboIXv79TVcdTAwMDbxteb5yVwiUVx1MDAwNo3Sn9xSXHUwMDEyTN7HQOSNwamkQYlZ1OzW/Fx1MDAxZeYkKlUqLJnz0+ubvfOVVnNObOvT7dL5tNnwk1x1MDAwM/dZolx1MDAxOVx1MDAwMCFcdTAwMDPRTIYwpGGUXCJcdTAwMDPnitqHefemvIBsweQjtlDs8OY/bFxyefy/olvdq8zKm+3DK2xS3Db4xGCvNDafY0dcdTAwMWU06Oe9PnTb53zuoLe6ulxcXVxcWTzYKdZEXFxcdTAwMThO7dgy6KFNskM9TFx1MDAwZoX9hDjcX45cdTAwMDGaIIXSI0+YXHUwMDEw3KSfXHUwMDFkXHUwMDA0XHUwMDA1OI9MzVx1MDAwNzVcdTAwMTB/XHUwMDEzXHUwMDA13Fmiw1x1MDAxOY6Te6e/TXggPvtXXHUwMDE5xHiVX5q409FcdTAwMDUqVtCba1x1MDAxMPdcdTAwMTZV+Fm7Pq7q6mx31tbLJ4eqNTnSn2FcdTAwMTCp/D92YkaycaAwsIiWXFxiXHUwMDBi6ddSj2lX9Vx1MDAwNotcdTAwMThr/TlcdTAwMTKOniqMwPqF/uxu3+9jXHUwMDEwXHUwMDBiXHUwMDFiQJLpjat+SiVHq8rn2LnEjMaqWXYn5ZDdSdkp7jiIQvEsvm7tvDNXb5RcdTAwMTdPalx1MDAxNz9u18r3auV+NUPRJqqTstQ6MFx1MDAwNaqvjLJmuFTaQVx1MDAxNSFzXHUwMDBmrVxmvJFpXHUwMDE4mJhGynhVUKngb6OKf/FEna9OyrFXvzopT1x1MDAxNcFkXHUwMDFii55ccnW3h85cdTAwMWJhX9C3onxcIi7NdVf8WFq2N9Pdo5uf+4fXk4nJ41spP2C081Zar7zhyVxigTYs0lx1MDAwYuUkXHUwMDExJvFxve7f3EpZkK7bRLrAXHUwMDE3Rn/1Us5cdTAwMWXwq5dycsBcdOilnDhnKFxy0pZcdTAwMTLDXHUwMDFkL86br1ZupuX+av1mq9s7dGH+KFxcXHUwMDFkbExcXCZhXHUwMDEyjU10XHUwMDA0laSsQbh/6dpF4ag2hmPdialcdTAwMTjNs+G4wGFFf6vWa7pWXHUwMDE5hmN8PYMmQVx1MDAxY1x1MDAwMnchfvDPwFvlgcFHVjAr4MZ2RO1cIlx1MDAxNeeaLOf1WV6+nXdKtcPOztpSffb7KV9yavl7a2Am8Vx1MDAwNn5bKZ9f2a2dhb11tWtcdTAwMWK9o43Nma9cdTAwMTT5X5VcIp9EXHLqNUpcIkDHylJcdTAwMTe5vI9r6lx1MDAwZkdtRDVRT2tcdTAwMTJEOyr/0Jq6/HiCSJPbP0JZRn3Pglx1MDAxNFFrVZXs5lx1MDAwMVxuzuDSXHUwMDE56r5BZaA211x1MDAwZvCaMvyFhdHiRGhcdTAwMTMmQTrHQiBcdTAwMTJcdTAwMWUkmLZcZlx1MDAwNfqz2ahcdTAwMWaGXHUwMDAx0/d01Yn+XHUwMDE20lx1MDAwM+JcdTAwMDNouzEwMDK/My34Olx1MDAwYnQpnoqCXHJPXW00vaBcdTAwMWPVnlx1MDAwNM5zh6Myafi8cFGomkalWlx1MDAwM0qH2WlQethUb0x+7z1cdHuK71VGU4cmm5qcoe/iirrgPtzh/OE0RfVccrV0hs3U0rxN8jIxLXoxMKGEjqpcdTAwMTHgVeYvhbSKulx1MDAwMGtKM1x1MDAwNbdJdrfiLCjqQ668l1x1MDAwMtQm3zpLcvHAvZ0lV1xuPm1idlGHY9w5XGJcdTAwMTK9jFdzXHUwMDA1WVx1MDAwNOpcZig5neWJuyh5si2NtIyDlFErL1x1MDAwZlEv0LlQYzWcs0S/yONONc2VnuHpKJmIS9hcdTAwMDSeP0GhqfhdcchdgHKm2qBgQGiLwFxmIZjgN/mNc+hU+6h1LFx1MDAwMMTAlUm2kpGSkXNcdTAwMDCLXHUwMDA18lx1MDAwM7pUwKt9XHUwMDBiv1x1MDAxOVOrLmJrMbx1Qk0hXaHkmVx1MDAwN4pzeX+4cd5dqp2vnyyK/bnuQu9g8XTiKVx1MDAwZZZcdTAwMWXcwEXOWiomXGLCwKiPm+aEc0GF7PaJRVx1MDAxOM5J9Fx1MDAxOMVwLDNg4oRvoOQqXHUwMDE28numOOBamrqRgdxEXHUwMDFkiYeOisBnXHUwMDE1matfyXEmpMaifzzbt/1yd+6gvdiYcZW1xvLRiGPMR2ztwtDG01KT0mCTh0MrMZyVKvSItFx1MDAxNzdOXGK/tnZp+1ZcdTAwMDVcdTAwMGLDNaqlkMt2wVx1MDAxY7CTg5xNYnbfdr352E7nz/ZcXKVfoS2kX7rHXHUwMDFiK9Z+we7TyMt4rbExOnstlXtoXHUwMDFkWjxcdTAwMDOq/LMqj+qz9dv19pY/7YSlSr816cZcdTAwMDbsXHUwMDE1RM1IOolcdTAwMDW+QEjXcGnqSq8sdfmM+pq+XHQlPrRcdTAwMTdcdTAwMTB4szFK5fZGWaje74Xpg63p6vz96fZWY5ab5bW4sbnqrU2vl0rr3eW92bvjzu761cLPykc71Fx1MDAxNqBhXtKS/tVcIp99yDloq6SI41x1MDAwYrooyPLNJkTn4HTxZ3nz7vLmVJ6ZyVx1MDAxN3l4Mz64KOlcdTAwMTP+YErilWSU91xiXHUwMDBmXHUwMDFjL/KJbVx1MDAwNVx1MDAwNK2EofFcdTAwMTl1p+8hzW+gTu8rzZlcckFcXGaSXHUwMDE17dZgiV+QRNBbvnZcdTAwMGKV2sl+oyVml49uqtturzTpklxmWeXRyVx0tFeZLlx05J5xpz2kXFyZ4PmbXHUwMDBl+fzQPkBSUUttmdvF7fdcdTAwMDDm2Dz+0pHOX9VcdTAwMDbIyExcdTAwMDOmOcRdmlx1MDAxNzSzm5srb1x1MDAxY56dtdaO5lrr7qze8itu7jfQetopXHUwMDEz5KVI64baXHUwMDAwSUZd/SyMXHUwMDA3KJFcdTAwMTh3pOSv7lx1MDAwM6Spq4n+0vyHwX5cdTAwMTfN/5VtgJTOTqw2XHUwMDE0LC1YXHUwMDA0+lx1MDAxOFx1MDAxZfzer82UV+9OSivV9VJY2V84vHeTpv45bYCAwVxmN5lqVFx1MDAxY/yiVHFcdTAwMTV1c6VcdTAwMTMmaF/dXHUwMDA2rt+YsfuhrVRcdTAwMDRMXHSdS/TJjYDel6yOl94xbTngvVxuq16SY9Vr6tVGeeval2sn7tC4o+56/2rSpDevXHUwMDEzkNeCXHUwMDA1Ok6A8la8M2nxXHLM0+mPWlxuXHUwMDE56HyVXHRcdTAwMTZfSpund/zO4ptZXHUwMDE5kX08I+UuS81cdTAwMGK1UX9cdTAwMTDctY666e/vVn7szjZPjs77nd7p9vfXJ1x1MDAwN35idYT3gtHZXHUwMDEzhpLUtTHp4IH2XGaS4YPVtFx1MDAwYq3eXHUwMDA0tuPPtlIjgmSxyPRzo0Wlqa9xxnHdXHUwMDEzI5ODtX9NjVx1MDAwNG5Zs35a/7M91+hVu3Vcblx1MDAwZudFnFx1MDAxMyHsZv0kKfTvUygxalpjlS8zNzdehzvU+tTC9Sq45/BoN2ztZvr7YePenZ2v2eXbw9KP01fu3Xye21x1MDAwM4XzXGY6xSnnXHUwMDFhSJ3K/DKOcUlcdTAwMWLrQVx1MDAwNlxygH5TtCMz8UtQXHUwMDA2Tlx1MDAxMPBZYJjoXHUwMDAw5Fx1MDAxMcVcdTAwMTJC0PF3nIo2XHUwMDE0Ma7huiUhXHJcdTAwMTX9S/m5SqlcdK/8a5Tyt/NnSoJLys7BQlx1MDAwYm1htnlcImHEMbjOWjo6oppcdTAwMGVcdTAwMGKV9VKRs240xY259zxgYKuTdVx1MDAwMUazKHncevBcdTAwMWNlTP5JNzSes5TDXHUwMDAz9Vx1MDAwZTSX+HjSMlx1MDAxMawnwmEsbcHnjic5jI+HzIngaDsnmYNcIlxyo1N9qHG4NVSmUWg846SAzVx1MDAwYt5C5Fx1MDAxM+NcdTAwMTlDXHUwMDA3zlFKucBcdTAwMGadf1hoSdJH6MRHOu7JyuTJTZxRypiPXHUwMDBl0FHOmdx8pWh6XHUwMDBlpNnT+UwqpFx1MDAxMqBK0FRcdTAwMDWzJyltP1xiqvMvMFwiXHUwMDE2mFx1MDAwNzqpXG7uq43tlDy8bFx1MDAxOSVsSrJuUuhcdTAwMDJpSyWqy6Z8JU+ZQVakXHUwMDEy3IZGlPlnkdOIdLtpp1x1MDAxOTZWJfO0SoaavipHmaXASJ5/XHUwMDAw1ts05Y/4v6MzXHUwMDFmltpcdTAwMTV1uVQ+ru3677fr19szUi3FXG5BxmQ+YG3HZD6QXzA4cMlccveWXHUwMDFjXHUwMDFjljXAZjkgTe+T95A2XHUwMDE0v3neXHUwMDAznTEs3OiSdlx1MDAxOcZEXiihT8XTJd7tJCUtZSy0+Kq8XHUwMDA3ULZqo5mR7CCYU4KSXHUwMDFhXHUwMDFmfsQ69Vx1MDAxNkl+eFx0c4xcdTAwMTHRWIeGXHUwMDE3pT48XcnrWCQ3mZ1cbilcdTAwMGaTUyviwiRyvX+xpGsleCjT8/3S/MFx7dL/eE3w4b3O17T5XGZS0K6qNHTUnyNcdTAwMDOZgFx1MDAxNDpcdTAwMDRGPVx1MDAxNFx1MDAxY8LgXHUwMDA157MpZIHMurHOm1xmXHUwMDE2mOu5oCxYqlx1MDAwYlx1MDAxY7FtXHUwMDA2g+iotFx1MDAwNbrFLVx1MDAxZNqnh/LrXHUwMDFjbVx1MDAwZtMm8Ej1f0bpb9fl/X6jcbZ4yFe7O1x1MDAwYt2TnXZLrnx49Dzw+NbEX5ltvvCEzczFp0dpxLpcdTAwMTe0t3n6XHUwMDFmsovuYfeVN/HjXHUwMDE48tS/JHbbu62D5ur39a3Dvdbc5b1cdTAwMGW9SVd/6oPjg3Ha0z7BkPqTv0YnlXJcdTAwMDEgyG45/lbt15hcdTAwMDaEgFx1MDAxMvfhSyg7QvmDYcYqXHUwMDE4Ylx1MDAwN+5cdTAwMTW4XHUwMDFmciGNtorL/EPJv1R/MO6vV/2oUEHR0U10uFx1MDAxZVx1MDAxY5jUnrmmY8jopNmAtVx1MDAwZvlVXHUwMDE2dFiq0uBe2ihcIm7KJP1cdTAwMGJqXG6tKHnUUFx1MDAxMVxiXGJa/oB0uipcdTAwMTWhRPVCRidcbnxKUjNFwXj4XGaSTnst4JNa0KtcdTAwMDCJcMThjUpcdTAwMTaCXHUwMDE4KlJx1Fx1MDAwZpNcdTAwMGVhx/fmjyegXHUwMDE4mtSUq0CN55N1XHUwMDFiluL4YDI8qqHCy7lcdTAwMDM6LIiitmSKSmaTy+FcdTAwMTUzXHUwMDEyviomL3B7i5zCTjujtMvhXHUwMDFkPF2ZKrJcdTAwMTjS6tzxXHUwMDAyM1RcdTAwMTJr8Vx1MDAwMc59uqpcdTAwMDTjaU7H/WB2Rlx1MDAwMNTeyVBQmCCTKFpcdTAwMDM/9kVcdTAwMDctzWyBKZ7PXVevxN5hp9G/urhfn3BLoVx1MDAxY+4stIZ8XHUwMDAyXHUwMDE3koaiZD0lXdFuXHUwMDE1p1x1MDAxZKMx52O+1VJQLyan6eRpLeBgxZtOXHUwMDBmTIUnmbMwXGJOeC3FUI6FsHS+hohndX7Zit/AVlx1MDAwNFx1MDAxNoQk7Fx1MDAwZUBIoEqynF9pXHUwMDA2J8bTXHUwMDAx2ZJcdTAwMGVcdTAwMDAqgO1AJ6NBguh0cjhcdTAwMGXcJdM2XHUwMDAwxs54akBCXHSFXHUwMDE4PFx1MDAxZjxcclx1MDAxZCNcdTAwMGJaXHUwMDE5JHUv8ck2MyVrmKKYkXroX2Rzw2WBUTiRO1xy0XAuVW9JaOyMoVJGilTZUKCikVGVqjCQf+NindtcdTAwMWVur2JRf1NcdPPEg8iPr0JcdTAwMTdpY9hy5SlM4pOmXHUwMDExamispX1q6lx1MDAwZS/zy0GdZtwqvJ2OwJFcInVw+pBW55tcdTAwMWVKx1x1MDAwM1xywGBcdTAwMGVgYVLTXHUwMDEzjGhcdTAwMDcuQFx1MDAxOSFEgYJGoVx1MDAxOG2mwCzT+TvcJ++et4xcdTAwMWH5clx1MDAwM0mh7f1cdTAwMDKlvlRwyWnxLJUkJy2ZoeZcdTAwMTSOxMjjj43HQd9oycZtnHkjODXGLGzKeq2rcvmoUivL2dmT7lb9irfOzyfblFx0WCtiRFx1MDAwMi5cdTAwMWXVi6aShFx1MDAwNdU4g2nSOeGKNrSzd6zfbMwgUYZCtlT3S2ntI5rYXHUwMDE4yyivjM4vXHUwMDA1X413XHUwMDFmfDZmcN1AaTOa4H5cdTAwMTmzyTRm8HtcZlx1MDAxNlx1MDAxZLQxKqnSqX1cdTAwMTBYJkdcdTAwMWIvwEJyXHUwMDA08DNcdTAwMTeMOTiYXHUwMDA3NdKUOi6SW3GUe1x1MDAxY7SjXHLaXHUwMDEwoqqlXFx48uExu4dy5WTaVDAqoTdWgotcdTAwMDOqi/hcdTAwMDGONsckXHUwMDFlVOufmJxitI1cIqWmKl54XHUwMDE2Llx1MDAxZjozXHUwMDE1J7pcdTAwMTOAzlx1MDAwMFx1MDAwM+FcZq5YUp3Wu2GnyWyGKoVwMOjiJZnW51fXXHUwMDFioe+v9k9XXFzlXFw2dy7XsjZOJlx1MDAwNDtBXFwgR9p7XHUwMDAxw+R4XHUwMDEyOlx1MDAxNVx1MDAwNeqEpMZg1Kxd+OzmjG9FTlBcdTAwMDWN8Vx1MDAxZNlO8vZGJKdcdOGJi0FAaJNcdTAwMTfe4DByXG5cdTAwMWagelmbRV/IOZnISVx1MDAwMVx1MDAxNHBEcCZ4mvBcdTAwMDP5iCpcdTAwMGIuXHUwMDFkJVCC2Vx1MDAxN+jboDWjXHUwMDBlXG6GdrlcdTAwMDGQLomccCus4bRB76n9b35bXHRDXcyAmcBhXHUwMDAweFDJXX1yKsBejVx1MDAwN1x1MDAwNzde5W9H03AmklPapIlcdTAwMWSMXHUwMDExjeahc9bRfn+gKJnKb6dD4ChcZnk8UVcvmbp7XFxE/WdwV4ORweVOT8JcdTAwMDeR3sIjM3jwkFx1MDAwZbdcdTAwMTlcdTAwMDZvXGIuXGZFyIBccrks29BxzpLjWjUlaKeafFxmK3XeeCXMQMCzs1hcdTAwMTJOXHUwMDExupBuXHUwMDAyXHUwMDA3U+LhXHUwMDA1XHUwMDA2XHUwMDBmL1x1MDAwNjSqQFx1MDAwNFx1MDAwZm5cdTAwMGaEwcDFdIrczfQtpIiho1x1MDAwNF9cdTAwMDLD8NLNiqx8U62yy1QtXHUwMDFjXHUwMDFkIPJcdTAwMGIypWfOtrYqN9vni+3GzM7Kj6ta56gqfoeEU8W9T1x1MDAxY7GZSjglt09cbmgrecTkzr7ppNTx/D1mMFx1MDAwN3aHx+7FU+9cdTAwMDRH54/bT06DhplW8s1tuenYWTrw5emnS7yrSFxu6vz25lSnO7WztPNne6dz0r+pxDNAYjlcdTAwMDCxfOnP6ds9fopcdTAwMGZa+scjXHUwMDEwfKtcXFxc7PRxh/HBXHUwMDA3nf123ajfzGS3kPnjUcdJmeq0WP/811x1MDAxZv/6f4/1tU8ifQ==OCAS Infrastructure College Infrastructure with OCAS Software College Infrastructure OCAS International Application Service 1 minute ~ OCAS Receiver (.NET Windows Service) OCAS Receiver (.NET Windows Service) SIS Inbound SIS Outbound Relational Database College Discretion Reconcile College ERP or SIS Software
The following section outlines the various configuration options found in both the
Receiver and Sender Clients.
The sender and receiver clients support Microsoft SQL Server and Oracle 11G and above.
Property Default ocasIntlSis Database Connection String
Example SQL Server Connection String
Data Source=(SERVER_HERE)\INSTANCE_HERE;Initial Catalog=ocas_sis_intl;UserId=USERID_HERE;Password=PASSWORD_HERE
Example Oracle Connection String
Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=HOST_HERE)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=SERVICE_NAME_HERE)));Password=PASSWORD_HERE;User ID=USERID_HERE;
The following configuration will dictate how often the Sender and Receiver client
will poll for new events to process.
Property Default client:scheduleSleep:duration 300ms (5 min)
For Outbound SIS Events, if an error is encountered, IAS API will stop processing until
the issue is fixed. But we offer the ability to have a second table where we log the
error response and mark the event as 'Failed', and continue processing. We do recommend
to use this with great care. You must:
Poll the dead letter table and view the error message, and take action. Do not let items
just sit there forever.
Be aware that if for example you send two events that pertain to the same Application, if
the first one fails, and we move it to the dead letter table, then the second one still might
be processed successfully. You have to be very aware of what events you are sending and when/if
they could fail.
Property Default client:useDeadLetterTable false
The Sender and Receiver clients leverage Serilog for event and error logging.
Property Default serilog:minimum-level Information
The rolling file feature creates application event logs within a series of rolling files.
Property Default serilog:write-to:RollingFileAlternate.logDirectory C:\Logs\ocas-sis-intl-receiver serilog:write-to:RollingFileAlternate.fileSizeLimitBytes 10485760 (10MB) serilog:write-to:RollingFileAlternate.retainedFileCountLimit 50
serilog:write-to:RollingFileAlternate.outputTemplate
{Timestamp:yyyy-MM-dd HH:mm:ss.fff zzz} [{Level}] [{SourceContext}] {Message}{NewLine}{Exception}
The event log feature creates application event logs within the Windows Event Viewer.
Property Default serilog:write-to:EventLog.source ocas-sis-intl-receiver serilog:write-to:EventLog.logName ApplicationFull serilog:write-to:EventLog.manageEventSource false serilog:write-to:EventLog.restrictedToMinimumLevel 3 (Error)
serilog:write-to:EventLog.outputTemplate
{Timestamp:yyyy-MM-dd HH:mm:ss.fff zzz} [{Level}] [{SourceContext}] {Message}{NewLine}{Exception}
The console feature outputs process information to the console window.
Property Default serilog:write-to:console (blank)
See Getting Started for more details on how to obtain a username, password and secret.
Property Default ocas:idsvr:publicOrigin <ToBeProvided> ocas:idsvr:sts <ToBeProvided> ocas:idsvr:clientId <ToBeProvided> ocas:idsvr:scope <ToBeProvided> ocas:idsvr:secret See Getting Started ocas:idsvr:username See Getting Started ocas:idsvr:password See Getting Started
The receiver client will retrieve pending SIS Events from the OCAS SIS API
in the sequence they were generated. These events will be inserted into the
SisInboundEvents table in the JSON (default) or XML format (if specified).
You can configure the output format by setting the following configuration property.
Property Default client:eventFormat json/xml (Default: json)
The sender client will read pending SIS Events sequentially from the source database.
Data will always be transmitted as JSON to the OCAS SIS API. Data in XML format will be
converted prior to transmission.
No custom sender configurations.
The following commands will install the Receiver and Sender clients as Windows Services.
Ocas.Sis.International.ReceiverClient.Service.exe install -displayname:Ocas.Sis.Intl.ReceiverClient -servicename:Ocas.Sis.Intl.ReceiverClient --delayed
& "Ocas.Sis.International.ReceiverClient.Service.exe" install -displayname:Ocas.Sis.Intl.ReceiverClient -servicename:Ocas.Sis.Intl.ReceiverClient --delayed
Ocas.Sis.International.SenderClient.Service.exe install -displayname:Ocas.Sis.Intl.SenderClient -servicename:Ocas.Sis.Intl.SenderClient --delayed
& "Ocas.Sis.International.SenderClient.Service.exe" install -displayname:Ocas.Sis.Intl.SenderClient -servicename:Ocas.Sis.Intl.SenderClient --delayed
The following commands will allow the SIS Receiver and Sender applications to
create logging entries within the Windows Event Viewer without administrative rights.
> [System.Diagnostics.EventLog]::CreateEventSource("ocas-sis-intl-receiver", "Application") > [System.Diagnostics.EventLog]::CreateEventSource("ocas-sis-intl-sender", "Application")
When processing, some messages may be skipped by the Send/Receiver Clients while others may cause processing to halt altogether (when client:useDeadLetterTable
is not present, or set to false).
In both cases, the college’s technical support team will need to investigate further. When all processing has stopped, the users of the system will likely be blocked in their workflow. This is why maintaining the order of Events is important.
Things to consider when processing is halted:
How are business processes impacted? When do business users rely on the system?
What are the steps to investigate and resume processing?
What are the detailed use cases that could cause processing to halt?
Have you tested all scenarios that may cause processing problems and accounted for them in your technical solution and/or support processes?
NOTE: When using the Sender/Receiver Clients to understand your technical and functional workflows, it is important to know when errors occur. Using the Windows Application Event log allows college IT staff to set up monitors (e.g., Microsoft System Center Operations Manager or equivalent) to alert the appropriate support team members if an error occurs.
The SIS Receiver and Sender applications each have an individual database table
required to write and read events respectively.
Name Type Purpose SisOutboundEvents table Sis Outbound Event Queue SisInboundEvents table Sis Inbound Event Queue
Column Name Column Type Purpose id bigint Event Unique Primary Key eventInfo nvarchar(max) Event Payload Data eventFormat nvarchar(5) Event Format Type (json, xml) createdDate datetime2 Created Date
Column Name Column Type Purpose id bigint Event Unique Primary Key status nvarchar(50) Event Status (Default: Pending) type nvarchar(50) Outbound Event Type 'Key' eventInfo nvarchar(max) Event Payload Data eventFormat nvarchar(5) Event Format Type (json, xml) createdDate datetime2 Created Date lastModifiedDate datetime2 Last Modified Date
Column Name Column Type Purpose id bigint Unique Primary Key eventid bigint Outbound Event Id Foreign Key httpstatuscode int Http Response Status Code (400-499) errormessage nvarchar(max) Error Response Payload createdDate datetime2 Created Date