Advertisement
Guest User

Untitled

a guest
Apr 19th, 2019
186
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PL/SQL 1.00 KB | None | 0 0
  1. CREATE OR REPLACE PROCEDURE send_to_jabber(p_users VARCHAR2, p_message VARCHAR2)
  2.     -- Процедура для отправки сообщения в JABBER
  3.     -- p_users - пользователь или список пользователей указанных через запятую без имени хоста.
  4.     -- p_message - сообщение
  5.     AS
  6.         l_user VARCHAR2(30);
  7.     BEGIN
  8.         IF (utl_jabber.attach('jabber.fgr.pr')) THEN
  9.             IF (utl_jabber.logon('ora@jabber.fgr.pr', '123', TRUE)) THEN
  10.                 utl_jabber.status(utl_jabber.status_online, 'ORACLE');
  11.                
  12.                 FOR rec IN (SELECT regexp_substr(p_users,'[^,]+', 1, LEVEL) AS user_name  FROM dual
  13.                             CONNECT BY regexp_substr(p_users, '[^,]+', 1, LEVEL) IS NOT NULL) LOOP
  14.  
  15.                     utl_jabber.send(TRIM(rec.user_name) || '@jabber.fgr.pr', p_message);      
  16.  
  17.         END LOOP;
  18.             END IF;
  19.  
  20.             utl_jabber.detach;
  21.         END IF;
  22.  
  23.     EXCEPTION
  24.         WHEN OTHERS THEN
  25.             DBMS_OUTPUT.put_line(SQLERRM);
  26.             utl_jabber.detach;
  27.             UTL_TCP.close_all_connections;
  28.     END;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement