BRPI0711812A2 - agregação da presença do usuário junto a um servidor - Google Patents

agregação da presença do usuário junto a um servidor Download PDF

Info

Publication number
BRPI0711812A2
BRPI0711812A2 BRPI0711812-0A BRPI0711812A BRPI0711812A2 BR PI0711812 A2 BRPI0711812 A2 BR PI0711812A2 BR PI0711812 A BRPI0711812 A BR PI0711812A BR PI0711812 A2 BRPI0711812 A2 BR PI0711812A2
Authority
BR
Brazil
Prior art keywords
condition
publisher
aggregate
disclosure
availability
Prior art date
Application number
BRPI0711812-0A
Other languages
English (en)
Inventor
Ankur Chavda
Amritansh Rachav
Eran Shtiegman
Setty Venkateshaiah
Sira P Rao
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of BRPI0711812A2 publication Critical patent/BRPI0711812A2/pt

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • H04L51/043Real-time or near real-time messaging, e.g. instant messaging [IM] using or handling presence information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/54Presence management, e.g. monitoring or registration for receipt of user log-on information, or the connection status of the users
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/535Tracking the activity of the user

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Information Transfer Between Computers (AREA)
  • Telephonic Communication Services (AREA)
  • Debugging And Monitoring (AREA)

Abstract

AGREGAçãO DA PRESENçA DO USUáRIO JUNTO A UM SERVIDOR. Um sistema de agregação de presença fornece um servidor de agregação de presença que possibilita a divulgação da condição de presença de um editor a partir dos múltiplos pontos finais de linha do editor. Uma condição de presença inclui um valor de disponibilidade e uma atividade, Uma atividade pode incluir uma atividade compromissada e/ou um texto de praxe. Quando qualquer um dos pontos finais de linha do editor produz uma divulgação de condição de presença no servidor de agregação de presença, o servidor de agregação de presença gera uma condição agregada do editor (ou seja, a disponibilidade do editor agregada ao curso de todos os pontos finais de linha do editor) e divulga a condição agregada gerada para cada um dos pontos finais de linha do editor. O servidor de agregação de presença pode fornecer ainda a condição agregada do editor junto aos assinantes da informação de condição agregada do editor.

Description

"AGREGAÇÃO DA PRESENÇA DO USUÁRIO JUNTO A UM SERVIDOR"
ANTECEDENTES
Os usuários dos dispositivos computacionais (por exp., Iaptops1 fones celulares, e componentes de assistência digital personalizados) necessitam com freqüência de se co- municarem em tempo real. Uma forma habitual para comunicações em tempo real é forneci- da através de serviços instantâneos de mensagem. Um serviço instantâneo de mensagem possibilita que participantes em pontos finais de linha enviem mensagens e as recebam de volta no intervalo de um segundo ou dois via outros participantes em contato entre si. Os participantes destinatários podem então enviar mensagens de volta para outros participan- tes em uma maneira semelhante. Para ser produtiva, a conversação em tempo real se ba- seia no fato dos participantes tomarem ciência do recebimento, e de enviarem uma resposta bastante rápida das mensagens recebidas. Esta pronta resposta apresenta-se em contraste com os sistemas de correio eletrônico convencional aonde os destinatários das mensagens de correio eletrônico respondem as mensagens sob sua conveniência.
Quando um participante iniciante deseja dar início a uma conversa em tempo real, ele necessita de saber se os participantes correlatos encontram-se disponíveis para respon- der em tempo real uma mensagem. Caso não estejam, então, as divulgações via o correio eletrônico convencional, correio em viva voz, ou algum outro tipo de mecanismo podem se apresentar como mais adequadas. Por exemplo, caso os computadores dos participantes envolvidos estejam desligados naquele momento, então a conversa em tempo real não po- derá ser viabilizada. Mais ainda, caso seus computadores estejam em funcionamento na- quele momento, mas os participantes envolvidos não estejam diante de seus computadores, também não será possível uma troca de conversa em tempo real. O participante iniciante gostaria de ter a informação quanto à disponibilidade dos participantes envolvidos de modo que pudesse chegar a uma decisão apropriada quanto à forma de comunicação.
Os serviços de presença fornecem esta informação quanto à disponibilidade. A condição de disponibilidade de uma entidade, tal como um sistema computacional ou de um usuário associado com aquele sistema computacional é referida como a "informação de pre- sença". A informação de presença identifica o "estado de presença" atual do usuário. Os usuários disponibilizam a informação de presença dos mesmos junto a um serviço de pre- sença, de maneira que outros usuários possam decidir quanto à melhor forma de comunica- ção entre si. Por exemplo, a informação de presença pode indicar se um usuário apresenta- se conectado ("online") junto a um servidor de mensagens instantâneas ou se está desco- nectado ("offline"). A informação de presença pode fornecer também informação mais deta- Ihada quanto a disponibilidade do usuário. Por exemplo, muito embora um usuário apresen- te-se conectado, pode se apresentar afastado do computador na ocasião de um encontro. Em tal situação, a condição de presença pode indicar "conectado" e "em um encontro". Em um contexto de mensagem instantânea, um usuário editor ("editor") pode forne- cer a informação de sua presença junto a um servidor de presença que daí fornece a infor- mação de presença junto aos usuários assinantes ("assinantes"). Assim, um servidor de presença pode fazer uso de um modelo de editor/assinante para fornecer a informação de presença para usuários do serviço de presença. Toda vez que a informação de presença de um usuário venha a mudar, o servidor de presença é notificado da mudança através do sis- tema computacional do usuário que, por sua vez, notifica os usuários assinantes da mudan- ça. Um usuário assinante pode então decidir se deve dar início a uma conversa por mensa- gem instantânea com base na informação de presença dos participantes envolvidos. Por exemplo, caso a informação de presença indique que um usuário editor encontra-se, no momento, ocupado em uma chamada telefônica de conferência, então o usuário assinante pode decidir por enviar uma mensagem instantânea, ao invés de efetuar uma chamada tele- fônica, junto ao usuário editor. Caso o usuário assinante, contudo, necessite de chamar e falar com o usuário editor, o usuário assinante necessita de monitorar a informação de pre- sença do usuário editor para saber quando poderá vir a realizar a chamada. Quando o usuá- rio assinante fica sabendo que a informação de presença do usuário editor indica que a con- ferência por telefone foi concluída, o usuário assinante pode então efetuar a chamada tele- fônica. O RFC 2778 representa uma especificação relacionada à informação de presença em sistemas de mensagens instantâneas. O RFC 3856 representa uma especificação refe- rindo-se a informação de presença fazendo uso do Protocolo de Inicialização de Sessão ("SIP").
Não é incomum que um usuário venha a estar em contato junto a um servidor de colaboração fazendo uso de muitos dispositivos ao mesmo tempo, criando assim múltiplos pontos finais de linha. Por exemplo, um usuário pode estar em contato, simultâneo, junto a um servidor de mensagens instantâneas fazendo uso de um assistente digital pessoal, um telefone sem fio, e um computador tipo laptop. Nesta circunstância, cada um desses pontos de final de linha contém pedaços de informação com respeito ao usuário, tal como se o usu- ário encontra-se digitando em um dispositivo, fazendo uso do dispositivo para efetuar uma chamada telefônica, etc., e a disponibilidade do usuário para comunicação ou outras formas de interação com os outros em uma dada oportunidade no período. Enquanto os serviços de presença correntes possam ser adequados para fornecimento da disponibilidade do usuário para se comunicar com um específico usuário em um ponto final de linha, esses serviços de presença são incapazes de fornecerem uma descrição apurada da disponibilidade do usuá- rio em se comunicar quando ele se encontra em contato com múltiplos pontos finais de Ii- nha.
SUMÁRIO
Fornece-se um método e sistema para agregação da presença de usuário através de múltiplos pontos finais de linha em um servidor. Um sistema de agregação de presença fornece um servidor de agregação de presença que possibilita a divulgação de condições de presença de um editor a partir dos múltiplos pontos finais de linha do editor. Uma condição de presença inclui um valor para disponibilidade e uma atividade. Uma atividade pode espe- cificar uma atividade compromissada e/ou uma ocupação habitual. Por exemplo, um usuário pode divulgar uma condição que inclua um valor para disponibilidade que indique este usuá- rio (no caso, um editor) encontrar-se conectado. Quando qualquer um dos pontos finais de linha do editor divulga uma condição de presença no servidor de agregação de presença, o servidor de agregação de presença gera uma condição agregada do editor (ou seja, a dis- ponibilidade do editor agregado em relação a todos os seus pontos finais de linha) e divulga a condição de agregação gerada para cada um dos pontos finais de linha do editor. O servi- dor de agregação de presença pode fornecer também a condição agregada do editor junto aos assinantes da informação de condição agregada do editor.
Este Sumário é fornecido para introduzir uma seleção de conceitos, em um formato simplificado, que serão descritos adiante na seção Descrição Detalhada. Este Sumário não pretende identificar as características principais ou essenciais da matéria em questão ora reivindicada, nem pretende ser empregado como um adendo na determinação do escopo da matéria em questão reivindicada.
BREVE DESCRIÇÃO DOS DESENHOS
A Figura 1 representa um diagrama de blocos que ilustra os componentes de um sistema de agregação de presença, de acordo com algumas modalidades.
A Figura 2 compreende de um diagrama da estrutura de dados que ilustra as estru- turas de dados lógicas de exemplo do sistema de agregação de presença, de acordo com algumas modalidades.
A Figura 3 representa um fluxograma que ilustra o processamento do sistema de agregação de presença, de acordo com algumas modalidades.
A Figura 4 representa um fluxograma que ilustra o processamento do módulo de agregação na determinação de uma condição de máquina agregada, de acordo com algu- mas modalidades.
A Figura 5 representa um fluxograma que ilustra o processamento do módulo de agregação na determinação de uma disponibilidade agregada, de acordo com algumas mo- dalidades.
A Figura 6 representa um fluxograma que ilustra o processamento do módulo de agregação na determinação de uma atividade corrente, de acordo com algumas modalida- des.
DESCRIÇÃO DETALHADA
Fornece-se um método e sistema para agregação da presença de usuário em torno dos múltiplos pontos finais de linha em um servidor. Em algumas modalidades, um sistema de agregação de presença provém com um servidor de agregação de presença que possibi- lita a divulgação das condições de presença de um editor a partir de qualquer um dos múlti- plos pontos finais de linha do editor. Uma condição de presença inclui um valor de disponibi- lidade e uma atividade. Uma atividade pode especificar uma atividade compromissada e/ou uma tarefa habitual. Por exemplo, um usuário pode divulgar uma condição que inclua um valor de disponibilidade que indique que o usuário (no caso, um editor) encontra-se conec- tado. Como outro exemplo, uma máquina pode especificar que se encontra ativa via divul- gação de uma condição que inclua o valor de disponibilidade que indique que a máquina se encontra conectada. Quando qualquer um dos pontos finais de linha do editor divulga uma condição de presença no servidor de agregação de presença, o servidor de agregação de presença gera uma condição de presença agregada (também referida como intercambiável na forma de uma "condição agregada") do editor (ou seja, a disponibilidade do editor agre- gado através de todos os seus pontos finais de linha) e divulga a condição agregada gerada para cada um dos pontos finais de linha do editor. A presença do servidor de agregação pode também prover com a condição agregada do editor junto aos assinantes da informação de condição agregada do editor. Em algumas modalidades, o servidor de agregação de pre- sença pode gerar uma condição agregada de um editor quando uma divulgação de condição de presença para o editor se encerra. Por exemplo, uma divulgação de condição de presen- ça pode expirar quando um ponto final de linha torna-se desconectado. Em algumas modali- dades, o servidor de agregação de presença pode gerar uma condição agregada de um edi- tor com base nos acionamentos especificados. Por exemplo, um ponto final de linha pode divulgar uma condição de presença que indique que o editor vai se encontrar ocupado às duas horas da tarde. Nesta circunstância, o servidor de agregação de presença pode gerar uma condição agregada para o editor na oportunidade indicada.
A divulgação da condição de presença concentra-se no editor. Focando no editor, o sistema de agregação de presença fornece um modelo de presença "centrado no indivíduo", no sentido de que o editor seja capaz de especificar a sua ou outra presença para os modos de divulgação desejados. O modelo de presença centrado no indivíduo simplifica o processo de divulgação permitindo com que a pessoa raciocine em termos de "Eu quero falar com esta pessoa", ao invés de "Eu preciso ligar para o celular dessa pessoa". Por exemplo, o editor pode conduzir aquela divulgação por telefone ou através de um encontro ao vivo no escritório do editor se isto for mais adequado ao editor do que o envio de uma mensagem instantânea. Um assinante recebendo a condição agregada de um editor é capaz de utilizar esta informação para empreender decisões quanto a melhor forma de divulgação junto ao editor. Caso a condição agregada do editor indique que o editor se encontra ausente no momento, o assinante pode enviar uma mensagem instantânea, e não ficará chateado caso não venha a receber uma resposta. Desta maneira, o sistema de agregação de presença permite que um editor indique de forma mais precisa a sua disponibilidade para comunicar- se com todos os pontos finais de linha do editor, e com os assinantes da condição agregada do editor para obter uma melhor indicação da disponibilidade e vontade do editor em entrar em contato.
Ao longo do relatório descritivo, os termos a seguir apresentam as seguintes defini- ções:
o termo "atividade" refere-se a um componente descritivo que encontra-se em uso por um usuário no momento oportuno. Por exemplo, uma aplicação de agendamento pode divulgar condições do tipo de datas de calendário que contenham a informação do evento do encontro.
O termo "disponibilidade agregada" refere-se a disponibilidade associada com um usuário (por exp., editor) para todos os pontos finais de linha do usuário.
O termo "presença agregada" refere-se a uma presença combinada de um usuário para todos os pontos finais de linha do usuário. A presença agregada pode incluir informa- ção além das condições de presença agregada. Por exemplo, a presença agregada pode incluir também um tempo de inatividade da máquina, uma indicação de localização, etc.
O termo "disponibilidade" refere-se a uma disposição do usuário e a possibilidade de divulgação. Para tanto, a disponibilidade de uma pessoa compreende a representação de quão "disponível" a pessoa se apresenta e/ou se o indivíduo pode ser interrompido. A dispo- nibilidade é projetada na forma de um valor numérico. Quanto maior o número, menor a chance de disponibilidade/ou de se achar a pessoa.
O termo "inquisidor" ou "editor" refere-se ao usuário que é o alvo da divulgação com base na presença (por exp., divulgação em tempo real). O inquisidor ou editor compreende da pessoa que divulga a informação de presença.
O termo "inquirido" ou "assinante" refere-se ao usuário que encontra-se observando a informação de disponibilidade agregada divulgada. O inquirido ou assinante compreende do usuário que dá início a divulgação com base na presença junto ao editor ou ao inquirido.
O termo "ponto final de linha" refere-se a uma simples sessão de conexão do usuá- rio. Tipicamente, os pontos finais de linha compreendem sinônimos dos dispositivos.
O termo "presença" refere-se a informação que é útil para a determinação de uma disponibilidade do usuário.
O termo "condição" refere-se a blocos de informação que representam fatores que influenciam a disposição e disponibilidade de um indivíduo para se comunicar.
Em algumas modalidades, o servidor de agregação de presença fornece pacotes para a divulgação da informação de presença. O servidor de agregação de presença forne- ce a cada editor um pacote de "condição", e somente o editor recebe permissões para verifi- car o conteúdo do pacote de sua condição. Cada pacote de condição contém uma coleção de zeros, uma ou mais divulgações de condição de presença para o respectivo editor. O servidor de agregação de presença monitora os pacotes de condição para uma mudança na condição de um editor (por exp., uma divulgação da condição de presença que altera a con- dição do editor). Mediante a detecção de uma mudança na condição do editor, o servidor de agregação de presença gera uma condição agregada (isto é, uma disponibilidade agregada e/ou uma atividade presente) do editor e divulga uma indicação da condição agregada no pacote de condição do editor, e assim notificando cada um dos pontos finais de linha do edi- tor da condição agregada divulgada. O servidor de agregação de presença pode determinar também o dispositivo computacional do editor (também referido como uma "máquina" no presente relatório) que se apresente mais ativo, e divulgar esta informação junto ao pacote de condição do editor, e daí, notificando cada um dos pontos finais de linha do editor da má- quina mais ativa do editor. Cada um dos pontos finais de linha do editor pode fazer uso des- ta informação para, por exemplo, determinar se devem ou não "auto aceitarem" uma solici- tação de divulgação. O dispositivo computacional do editor compreende um dispositivo utili- zado pelo editor para criar um ponto final de linha.
O servidor de agregação de presença possibilita a que cada editor defina uma cole- ção de um ou mais pacotes, para especificação de uma lista de controle de acesso (ACL) para cada pacote, e para especificar as divulgações que devem ser incluídas em cada paco- te. O ACL especifica as entidades, também referidas como "membros", que tem permissão a uma assinatura para recebimento das divulgações feitas à cada pacote. Por exemplo, o edi- tor pode especificar os membros de um pacote especificando os tipos filiados de entidades individuais (por exp., Joe Smith), um grupo de entidades (por exp., Projeto de uma Equipe de Marketing), entidades com uma característica em comum (por exp., dentro do domínio acme.com), e assim por diante. O servidor de agregação de presença possibilita que as en- tidades assinem para receberem as divulgações do editor, incluindo o estado agregado do assinante e alguma outra informação de presença divulgada. Caso a entidade assinante seja um membro de um pacote conforme determinado pelo ACL de pacotes, então, o servi- dor de agregação de presença adiciona aquela referida entidade na forma de um assinante daquele pacote. O servidor de agregação de presença notifica, então aos assinantes do pa- cote das divulgações feitas para aquele pacote. A divulgação pode representar a condição agregada do editor bem como alguma outra informação de presença. Por exemplo, quando o servidor de agregação de presença gera uma condição agregada do editor, o servidor de agregação de presença pode divulgar uma indicação da condição agregada em cada um dos pacotes do editor, notificando assim os assinantes da condição agregada do editor. O servidor de agregação de presença pode possibilitar a que um editor comunique a informa- ção de presença diretamente aos pacotes do editor. Por exemplo, um editor pode definir um pacote que é disponibilizado aos assinantes que sejam colaboradores. Por exemplo, em acréscimo a condição agregada, um editor pode querer também informar aos colaboradores que o editor encontra-se "em reunião com John", enquanto não fornece esta parte adicional de informação aos demais.
Em algumas modalidades, uma divulgação de condição de presença pode ser con- cebida a partir de um "usuário", "máquina", "fone", "calendário", "conferência", ou "assunto genérico", conforme mostrado na Tabela 1 abaixo.
<table>table see original document page 8</column></row><table>
Tabela 1
Uma condição de usuário é fornecida de modo manual ou especificada por um edi- tor e, como tanto, provém uma indicação da intenção do editor. Por exemplo, a aplicação do cliente do sistema de agregação de presença executando na máquina do editor, na qual o editor possa ter feito emprego para criar um ponto final de linha, pode fornecer uma interface para usuário através de onde o editor possa ter acesso a uma lista das condições de usuá- rio, tais como aquelas listadas na Tabela 2 abaixo.
<table>table see original document page 8</column></row><table> <table>table see original document page 9</column></row><table>
Tabela 2
Conforme mostrado através do exemplo das condições do usuário na Tabela 2, um editor pode indicar sua intenção em se divulgar via "Conectado", Ocupado", "Não perturbe", "Estou logo de volta", "Ausente", "Aparentemente Desconectado". Cada condição de usuário apresenta um valor de disponibilidade correspondente conforme indicado pela condição de usuário a partir de uma maior ou menor disponibilidade, em que o valor de disponibilidade mais amplo corresponde a uma condição de menos disponível. Por exemplo, a partir dentre as seis condições de usuário listadas na Tabela 2, "Conectado" é a condição de usuário mais disponível e "Aparentemente Fora de Linha" compreende da condição de usuário me- nos disponível. O editor pode especificar uma condição de usuário selecionando uma das condições de usuário a partir da lista exibida, a aplicação do cliente determina o valor de disponibilidade que corresponde a condição de usuário especificada, e divulga o valor de disponibilidade na forma da condição de usuário editor no pacote de condição do editor no servidor de agregação de presença. Por exemplo, caso o editor especifique manualmente uma condição de usuário de "Conectado", a condição de usuário especificada será divulga- da no pacote de condição do editor na forma de um valor de disponibilidade de condição de usuário de 3500 (por exp., condição de usuário, valor = 3500). Quando uma condição de usuário é divulgada, o servidor de agregação de presença salienta a divulgação com um horário de divulgação.
Uma condição de máquina fornece uma indicação de se o editor encontra-se sob alcance na máquina. Em algumas modalidades, cada ponto final de linha divulga uma con- dição de máquina. Por exemplo, a aplicação do cliente pode monitorar a máquina do editor para eventos tais como atividade ou inatividade do teclado, do mouse ou dispositivo indica- dor, ativação de salvamento de tela ou travamento da máquina, e outros eventos que pro- porcionam uma indicação do uso da máquina. Quando tal evento é detectado, a aplicação do cliente determina o valor da disponibilidade que corresponde à condição da máquina, e divulga o valor de disponibilidade como a condição da máquina do editor no pacote de con- dição do editor no servidor de agregação de presença. Uma lista de exemplos das condi- ções de máquina e os valores de disponibilidade correspondentes e as atividades opcionais compromissadas são fornecidos na Tabela 3 abaixo. <table>table see original document page 10</column></row><table>
Tabela 3
Conforme mostrado na Tabela 3, um ponto final de linha pode indicar que a condi- ção de máquina como "Ativa", "Inativa", "Desconhecida", "Ausente", e "Desligada". Seme- lhantemente as condições de usuário listadas na Tabela 2, as condições de máquina lista- das na Tabela 3 são categorizadas de acordo com as suas indicações de disponibilidade, a partir de uma maior ou menor disponibilidade, em que o valor mais amplo de disponibilidade corresponde a uma condição de menor disponibilidade. Mais ainda, a partir das Tabelas 2 e 3, pode-se observar que a condição de máquina de "Ausente" indica uma condição menos disponível do que uma condição de usuário "Não Perturbe". A atividade compromissada, quando presente, representa um texto que representa a condição particular da máquina. A atividade compromissada é fornecida, tipicamente, pelo editor (por exemplo, a aplicação do cliente que comunicou a condição da máquina). Por exemplo, a aplicação do cliente pode determinar que se encontra, presentemente em uso e, a partir disto determinar uma condi- ção de máquina "Ativa". Neste exemplo, a aplicação do cliente pode divulgar uma condição de máquina no pacote de condição do editor no servidor de agregação de presença na for- ma de um valor de disponibilidade de condição de máquina de 3500 (por exp., condição de máquina; valor=3500; atividade compromissada = NULA). No exemplo a seguir, a aplicação do cliente pode monitorar a atividade do hardware para determinar uma condição de máqui- na. Quando uma condição de máquina é divulgada, o servidor de agregação de presença salienta a divulgação com um horário de divulgação.
Uma condição de fone indica a condição de um fone de editor. Por exemplo, a apli- cação do cliente pode detectar que o editor apresenta-se presentemente em circuito no viva voz da Internet (VoIP) e divulgar uma condição de fone. Uma lista de valores de disponibili- dade, de condição de fone e as atividades opcionais compromissadas correspondentes e os textos de praxe, é fornecida na Tabela 4 abaixo.
<table>table see original document page 11</column></row><table>
Tabela 4
Semelhantemente às condições de usuário listadas na Tabela 2 e às condições de máquina listadas na Tabela 3, as condições de fone listadas na Tabela 4 são categorizadas de acordo com suas indicações de disponibilidade a partir de disponibilidades mais ou me- nos disponíveis, em que um valor de disponibilidade mais amplo corresponde a uma condi- ção menos disponível. A atividade compromissada, quando presente, representa um texto que descreve ainda a condição de fone particular. Por exemplo, o texto de praxe pode des- crever a condição de fone em uma língua específica, tal como a Japonesa. A atividade com- promissada e o texto de praxe são fornecidos, tipicamente, fornecidos pelo editor (por exp., a aplicação do cliente que comunicou a condição de fone). Por exemplo, a aplicação do cli- ente pode determinar que o editor encontra-se no momento conduzindo uma conversação numa base de um por um. Neste exemplo, a aplicação do cliente pode divulgar uma condi- ção de fone no pacote de condição do editor no servidor de agregação de presença na for- ma de um valor de disponibilidade de condição de fone de 6500 ( por exp., condição de fo- ne; valor=6500; atividade compromissada = "Em conversação"; texto de praxe = "Conversa- ção numa base de um por um"). Quando se é divulgado uma condição de fone, o servidor de agregação de presença salienta a divulgação com um horário de divulgação.
Uma condição de calendário indica a condição de um calendário do editor. Por e- xemplo, a aplicação do cliente pode interagir com uma aplicação do agendamento para de- terminar se o editor encontra-se liberado, ou numa reunião, ou fora do escritório, etc., e di- vulga esta informação na forma de uma condição de calendário. Uma lista exemplo, com valores de disponibilidade da condição de calendário e atividades em prática opcionais cor- respondentes e textos de praxe, é fornecida na Tabela 5 abaixo.
<table>table see original document page 12</column></row><table>
Tabela 5
Semelhantemente às condições de usuário listadas na Tabela 2, às condições de máquina listadas na Tabela 3, e às condições de fone listadas na Tabela 4, as condições de calendário na Tabela 5 são categorizadas de acordo com suas indicações de disponibilidade de mais ou menos disponíveis, em que o valor mais amplo de disponibilidade corresponde a uma condição de disponibilidade menor. A atividade compromissada, quando presente, compreende de um texto que representa a condição de calendário particular. O texto de praxe, quando presente, compreende de um texto que descreve ainda a condição de calen- dário particular. Por exemplo, o texto de praxe pode fornecer detalhes adicionais com res- peito à condição de calendário particular que não é fornecida pela atividade compromissada. A atividade compromissada e o texto de praxe são fornecidos tipicamente pelo editor (por exp., a aplicação do cliente pode determinar que o editor não encontra-se em reuniões. Nes- te exemplo, a aplicação do cliente pode divulgar uma condição de calendário no pacote de condição do editor no servidor de agregação de presença na forma de um valor de disponi- bilidade de condição de calendário de 3500 (por exp., condição de calendário; valor=3500; atividade compromissada = "NULA"; texto de praxe = "Liberado"), quando uma condição de calendário é divulgada, o servidor de agregação de presença salienta a divulgação com um horário de divulgação.
Uma condição de conferência indica a condição das atividades voltadas a confe- rências pelo editor. Por exemplo, a aplicação do cliente pode detectar que o editor está par- ticipando no momento de uma conferência e divulgar a condição de conferência. Fornece-se uma lista de exemplo dos valores de disponibilidade de condição de conferência e ativida- des opcionais compromissadas correspondentes e textos de praxe através da Tabela 6 a- baixo.
<table>table see original document page 13</column></row><table> <table>table see original document page 14</column></row><table>
Tabela 6
Semelhantemente às condições de usuário listadas na Tabela 2, às condições de máquina listadas na Tabela 3, às condições de fone listadas na Tabela 4, e às condições de calendário listadas na Tabela 5, as condições de conferência listadas na Tabela 6 são cate- gorizadas de acordo com suas indicações de disponibilidade a partir de uma disponibilidade mais ou menos aceitável, aonde um valor mais amplo da disponibilidade corresponde a condição de menos disponível. A atividade compromissada, quando presente, compreende de um texto que representa a condição de conferência particular. O texto de praxe, quando presente, representa um texto que descreve adicionalmente a condição de conferência em particular. Por exemplo, o texto de praxe pode descrever a condição de conferência em uma língua específica, tal como a Japonesa, ou fornecer detalhes adicionais com respeito a con- dição de conferência particular que não seja provida pela atividade compromissada. A ativi- dade compromissada e o texto de praxe são fornecidos, tipicamente, pelo editor (por exp., a aplicação do cliente que comunicou a condição de conferência). Como forma de exemplo, a aplicação do cliente pode detectar que uma aplicação de conferência, tal como o MICROSOFTs POWERPOINT, executando na máquina do editor encontra-se no modo de "tela cheia". A partir deste fato, a aplicação do cliente pode determinar que o editor encontra- se presentemente participando de uma conferência. Neste exemplo, a aplicação do cliente pode publicar uma condição de conferência no pacote de condição do editor no servidor de agregação de presença na forma de um valor de disponibilidade de condição de conferência de 9500 (por exp., a condição de conferência; valor = 9500; atividade compromissada = "NULA"; texto de praxe = "Presente"). Quando uma condição de conferência é divulgada, o servidor de agregação de presença salienta a divulgação com um horário de divulgação.
As condições genéricas incluem os eventos que são divulgados tanto como uma condição de usuário, uma condição de dispositivo, uma condição de fone, uma condição de calendário, ou uma condição de conferência. Por exemplo, a aplicação do cliente sendo e- xecutada na máquina do usuário pode detectar um evento que não esteja na condição de usuário, ou na condição de dispositivo, na condição de fone, na condição de calendário, ou na condição de conferência. Neste instante, a aplicação do cliente pode publicar o evento na forma de uma condição genérica no pacote de condição do editor no servidor de agregação de presença. Em acréscimo a indicação de que a divulgação represente uma divulgação de condição genérica com fornecimento de um valor de disponibilidade, a aplicação do cliente pode fornecer também uma atividade compromissada e/ou um texto de praxe que represen- te e/ou descreva adicionalmente a condição genérica divulgada. Quando uma condição ge- nérica é divulgada, o servidor de agregação de presença salienta a divulgação com um ho- rário de divulgação.
Em algumas modalidades, a aplicação do cliente pode fornecer uma interface de aplicação de programa ( API) que vem a permitir que eventos detectados por outras aplica- ções sejam divulgados. Por exemplo, aplicações tais como uma aplicação de calendário, uma aplicação de fone (por exp., aplicação VoIP), uma outra aplicação de conferência, etc. podem detectar eventos e solicitarem que a aplicação do cliente comunique os eventos de- tectados e solicitarem que a aplicação do cliente comunique os eventos detectados no paco- te de condição do editor no servidor de agregação de presença.
Em algumas modalidades, uma aplicação ou dispositivo de uma terceira parte pode divulgar diretamente os eventos no pacote de condição do editor no servidor de agregação de presença. Por exemplo, um dispositivo de intercâmbio de ramal privado (PBX) pode ser informado do servidor de agregação de presença e pode ter os privilégios necessários (por exp., credenciais) para divulgar a informação de presença para um editor no pacote de con- dição do editor no servidor de agregação de presença. Quando o dispositivo PBX detecta um evento, tal como o editor estando presentemente envolvido numa chamada telefônica, o dispositivo PBX pode divulgar o evento determinado através da determinação de um valor de disponibilidade apropriado que representa o evento. O dispositivo PBX pode, daí, divul- gar o valor de disponibilidade na forma de uma condição genérica no pacote de condição do editor no servidor de agregação de presença. O dispositivo PBX pode fornecer ainda uma atividade compromissada e/ou um texto de praxe que represente e/ou venha a adicionar a descrição da condição genérica divulgada.
Em algumas modalidades, o servidor de agregação de presença determina uma disponibilidade agregada de um editor considerando as divulgações de condição de presen- ça do editor para todos os pontos finais de linha do editor, e divulga a disponibilidade agre- gada determinada. O servidor de agregação de presença monitora os pacotes de condição para mudanças junto à condição do editor. Mediante a detecção de uma mudança junto à condição do editor (por exp., uma divulgação da condição de presença junto ao pacote de condição do editor), o servidor de agregação de presença gera uma disponibilidade agrega- da para o editor na forma de uma condição menos disponível para todos os pontos finais de linha do editor. O servidor de agregação de presença identifica a máquina com a condição mais disponível a partir das condições de máquina divulgadas, e faz uso somente da máqui- na com a condição mais disponível para execução da agregação. Para se determinar a dis- ponibilidade agregada ao editor, o servidor de agregação de presença verifica o pacote de condição do editor para uma divulgação de uma condição de usuário. No caso em que exis- ta uma divulgação de condição de usuário, o servidor de agregação de presença extrai o horário de divulgação da divulgação de condição de usuário, e reduz as outras divulgações de condição de presença (a divulgação de condição de máquina mais disponível identifica- da, divulgações de condição de fone, divulgações de condição de calendário, divulgações de condição de conferência, e divulgações de condição genérica) no pacote de condição ao horário de divulgação, e elimina as divulgações de condição de presença que sejam anterio- res à divulgação de condição de usuário. A partir das divulgações de condição de presença restantes, o servidor de agregação de presença extrai o valor de disponibilidade a partir da condição menos disponível, e designa este valor de disponibilidade na forma de disponibili- dade agregada do editor. No caso de onde uma divulgação de condição de usuário não se encontrar presente no pacote de condição, o servidor de agregação de presença extrai o valor de disponibilidade a partir da condição menos disponível dentre a divulgação de condi- ção de máquina mais disponível, divulgações de condição de fone, divulgações de condição de calendário, divulgações de condição de conferência, e divulgações de condição genérica, esignando este valor de disponibilidade na forma de disponibilidade agregada do editor. O servidor de agregação de presença divulga, então a disponibilidade agregada gerada (por exp., um valor representando a disponibilidade agregada, uma indicação de um ícone repre- sentando a disponibilidade agregada, um texto de falha representando a disponibilidade a- gregada, etc.) no pacote de condição do editor, o que leva a que cada um dos pontos finais de linha do editor sejam notificados da disponibilidade agregada do editor. A disponibilidade agregada pode ser então visualizada em cada ponto final de linha. O servidor de agregação de presença pode então divulgar a disponibilidade agregada gerada em um ou mais dos outros pacotes do editor. Isto leva a que a disponibilidade agregada do editor seja enviada aos assinantes que tenham assinaturas junto aos pacotes, notificando dessa maneira aos assinantes da disponibilidade agregada do editor.
A Tabela 7 abaixo contém um mapeamento dos valores de disponibilidade corres- pondendo as disponibilidades agregadas, textos de falhas, e descrições.
<table>table see original document page 16</column></row><table> <table>table see original document page 17</column></row><table>
Tabela 7
Conforme mostrado na Tabela 7, uma gama de valores de disponibilidade mapeia cada disponibilidade agregada. Por exemplo, os valores de disponibilidade na faixa de 3000- 3999 mapeiam a disponibilidade agregada "Conectado". O mapeamento de uma gama de valores de disponibilidade junto a uma simples disponibilidade agregada possibilita uma ca- tegorização dos valores de disponibilidade dentro de uma classe de disponibilidades. Por exemplo, a condição de fone "Em conferência com muitos interessados" na Tabela 4 anteri- or e a condição de calendário "Em uma reunião" na Tabela 5 anterior irão ambos mapear a mesma disponibilidade agregada de Ocupado". Muito embora, ambas condições resultem na mesma disponibilidade agregada, a condição de fone "Em conferência com muitos inte- ressados" é categorizada inferiormente (ou seja, menos disponível) do que a condição de calendário "Em uma reunião" devido a seu número de disponibilidade mais amplo (6750>6500). Para tanto, caso a disponibilidade agregada do editor seja escolhida a partir dessas duas condições, a condição de fone "Em conferência com muitos interessados" será selecionada na forma de disponibilidade agregada do editor.
Em algumas modalidades, o servidor de agregação de presença determina uma a- tividade presente em que um editor esteja envolvido e divulga esta informação. O servidor de agregação de presença pode divulgar uma atividade corrente como parte da condição agregada. Para determinação da atividade corrente para um editor, o servidor de agregação de presença identifica a condição de máquina mais disponível a partir das condições de má- quina divulgadas. O servidor de agregação de presença verifica então o pacote de condição do editor para uma divulgação de uma condição de usuário. No caso em que exista uma divulgação de condição de usuário, o servidor de agregação de presença extrai o tempo de publicação da divulgação de condição de usuário, e reduz as outras divulgações de condi- ção de presença (a divulgação de condição de máquina mais disponível identificada, divul- gações de condição de fone, divulgações de condição de calendário, divulgações de condi- ção de conferência, e divulgações de condição genérica) no pacote de condição pelo horário de divulgação, e elimina as divulgações de condição que sejam anteriores a divulgação da condição de usuário. A partir das divulgações de condição de presença restantes, o servidor de agregação de presença remove as divulgações de condição de presença que não apre- sentem uma atividade compromissada correspondente ou um texto de praxe (ou seja, as divulgações de condição que não incluam uma atividade). Caso não existam divulgações de condição de presença restantes, o servidor de agregação de presença divulga uma indica- ção de não existe nenhuma atividade presente. Caso não existam divulgações de condição de presença restantes, o servidor de agregação de presença seleciona a atividade a partir da menos disponível das divulgações de condição de presença restante na forma de ativi- dade corrente. O servidor de agregação de presença divulga então a atividade corrente do editor no pacote de condição de editor. O servidor de agregação de presença pode divulgar também a atividade corrente em um ou mais dos outros pacotes do editor. Neste instante aonde o servidor de agregação de presença divulga uma indicação de que não está ocor- rendo uma atividade corrente, o ponto final de linha (por exp., uma aplicação sendo execu- tada no ponto final de linha) pode selecionar o texto de falha que representa a disponibilida- de agregada do editor na forma de uma atividade corrente do editor.
Em algumas modalidades, uma divulgação de condição de presença pode incluir múltiplas atividades. Cada atividade incluída na divulgação pode apresentar um indicador correspondente que especifica uma condição sob a qual a atividade particular deva ser con- siderada válida. Por exemplo, uma divulgação pode indicar que a atividade do editor deva ser "Fora do escritório", caso o valor da disponibilidade seja maior do que 15000, e que a atividade seja "Conectado", por outro lado. Como outro exemplo, uma divulgação pode indi- car que a atividade do editor deva ser "Fora do Escritório" entre 10 da manhã e duas da tar- de, e que a atividade seja de "Liberado" para os demais horários durante o dia. Um especia- lista na área irá apreciar que a indicação de condição para uma atividade pode ser especifi- cada de outras maneiras. Por exemplo, um indicador de condição pode incluir uma combi- nação de faixas de valores de disponibilidade e uma gama de horários.
Em algumas modalidades, o servidor de agregação de presença determina uma condição de máquina agregada para um editor e divulga esta informação. O servidor de a- gregação de presença identifica a condição de máquina mais ativa do editor na forma da condição de máquina agregada do editor, e divulga esta informação no pacote de condição de editor. O servidor de agregação de presença pode identificar também como a máquina mais ativa, a máquina a partir da qual foi divulgada a condição da máquina mais ativa, e divulgar uma indicação da máquina mais ativa no pacote de condição do editor. Cada um dos pontos finais de linha pode utilizar esta informação em pontos múltiplos dos cenários de presença, por exemplo, para responder automaticamente a uma solicitação que tenha sido recebido por todos os pontos finais de linha do editor. A Figura 1 compreende de um diagrama de blocos que ilustra os componentes de um sistema de agregação de presença, de acordo com algumas modalidades. Um sistema de agregação de presença 102 é acoplado junto a dispositivos de entidade 104 via uma re- de de trabalho 106. Os dispositivos de entidade correspondem a entidades que podem compreender editores ou assinantes. O sistema de agregação de presença inclui o recebi- mento de um módulo de atualização 108, uma atualização do módulo de divulgação 110, uma adição do módulo de divulgação 112, um recebimento do módulo de solicitação de as- sinatura 114, uma adição de módulo de assinatura 116, criação do módulo de pacote 118, um armazenador de pacote 120, um módulo de agregação 122, e um encerramento do mó- dulo de divulgações 124. Alguns desses módulos, ou todos eles, podem ser fornecidos em um servidor de agregação de presença ou em servidores de agregação de presença. O ar- mazenador de pacote contém os pacotes dos editores (criados pelo criador de módulo de pacote) e outras estruturas de dados utilizadas pelo sistema de agregação de presença. O recebimento do módulo atualizado é requisitado quando uma solicitação para atualização de uma divulgação é recebida a partir de um editor. O recebimento do módulo de atualização requisitada a atualização do módulo de divulgação para atualizar a divulgação e adicionar o módulo de divulgação para acrescentar uma nova divulgação junto a um pacote. O recebi- mento do módulo solicitando a assinatura é requisitado quando uma solicitação é recebida a partir de uma entidade para assinar um pacote de um editor. O recebimento do módulo de solicitação de assinatura requesta a adição do módulo de assinatura para assinar a entidade junto ao pacote especificado ou aos pacotes. O módulo de agregação processa as divulga- ções de condição de presença em um pacote de condição de divulgação para gerar uma condição agregada do editor. O encerramento do módulo de divulgações é periodicamente requisitado pelo sistema de agregação de presença para limpar as divulgações encerradas (condição) nos pacotes no armazenador de pacote. Embora não mostrados na Figura 1, os dispositivos de entidade incluem componentes do sistema de agregação de presença para definição dos pacotes e seus ACLs1 para o envio de atualizações de divulgação, para o en- vio de solicitações de assinatura, para recebimento de notificações de atualizações junto a divulgações, e para recebimento de divulgações a partir do sistema de agregação de pre- sença.
A rede de trabalho é tipicamente um elo para divulgações que facilita a transferên- cia de conteúdo eletrônico entre os dispositivos anexados. Em algumas modalidades, a rede de trabalho inclui a Internet. Deve-se apreciar que a rede de trabalho pode compreender de um ou mais tipos de redes de trabalho, tal como, uma rede de trabalho local, uma ampla rede de trabalho, uma conexão ponto-a-ponto de discagem, uma rede de trabalho sem fio, e elementos do gênero.
Os dispositivos computacionais, em que o sistema de agregação de presença pode ser implementado, podem incluir uma unidade central de processamento, memória, disposi- tivos de entrada (por exp., teclado e dispositivos de marcação), dispositivos externos (por exp., dispositivos de visualização), e dispositivos de armazenagem (por exp., drives de dis- cos). A memória e os dispositivos de armazenagem compreendem de uma mídia fixa que pode conter instruções que implementam o sistema de agregação de presença. Ainda, as estruturas de dados e mensagens podem ser armazenadas ou transmitidas via uma mídia de transmissão de dados, tal como um sinal via um elo de divulgações. Vários elos de divul- gações podem ser empregados, tal como a Internet, uma rede de trabalho na área local, uma rede de trabalho em ampla área, uma conexão ponto-a-ponto de discagem, uma rede de trabalho de telefone celular, e assim por diante.
As modalidades do sistema de agregação de presença podem ser implementadas em vários ambientes operacionais que incluem computadores pessoais, computadores do servidor, dispositivos manuais ou tipo laptop, sistemas de multiprocessadores, sistemas com base em micro-processadores, dispositivos eletrônicos programáveis voltados ao consumi- dor, câmeras digitais, PCs de redes de trabalho, minicomputadores, computadores de gran- de porte, ambientes computacionais distribuídos que incluam quaisquer dos sistemas ou dispositivos anteriores, e assim por diante. Os dispositivos de usuário podem compreender de telefones celulares, assistentes digitais pessoais, fones inteligentes, computadores pes- soais, componentes eletrônicos programáveis voltados ao consumidor, câmeras digitais, e assim por diante.
O sistema de agregação de presença pode ser descrito no contexto geral das ins- truções executáveis por computador, tal como módulos e componentes do programa, execu- tadas por um ou mais computadores ou outros dispositivos. Em geral, os módulos do pro- grama incluem rotinas, programas, objetos, componentes, estruturas de dados, e assim por diante que desempenham tarefas particulares ou então, implementam tipos de dados abs- tratos particulares. Tipicamente, a capacidade funcional dos módulos de programa pode ser combinada ou distribuída conforme o desejado em várias modalidades.
A Figura 2 representa um diagrama de estrutura de dados que ilustra estruturas de dados lógicos de exemplo do sistema de agregação de presença, de acordo com algumas modalidades. A estrutura de dados inclui uma mesa de editor 202 que inclui uma entrada para cada editor. Cada entrada identifica um editor e aponta para a mesa do pacote do edi- tor 204. A mesa do pacote do editor contém uma entrada para cada pacote do editor corres- pondente. Cada entrada identifica o pacote (por exp., por nome) e contém um ACL, uma lista de assinantes, e uma lista de divulgação. O ACL especifica as entidades que são dis- ponibilizadas para assinarem com o pacote correspondente. A lista de assinantes identifica os assinantes que encontram-se inscritos junto ao pacote correspondente. A lista de divul- gação contém uma entrada para cada divulgação do pacote. Quando é feita uma divulgação em um pacote, o sistema de agregação de presença utiliza a lista de assinantes para identi- ficar os assinantes que são para serem notificados. Quando uma entidade faz uma assinatu- ra junto a um pacote, o sistema de agregação de presença utiliza o ACL para determinar se concede ou nega a assinatura. Um especialista na área irá apreciar que isto se trata somen- te de um exemplo do perfil lógico das estruturas de dados do sistema de agregação de pre- sença. As estruturas de dados do sistema de agregação de presença podem ser delineadas junto aos requisitos de computação/espaço do sistema de agregação de presença. Por e- xemplo, a lista de assinantes pode ser fornecida em uma tabela separada, tal como uma tabela de assinante. Cada entrada na tabela de assinante pode especificar um editor, um assinante, e uma lista de divulgações (incluindo suas versões). O sistema de agregação de presença pode utilizar a combinação de tabelas para determinar quais versões das divulga- ções devem ser vistas pelos assinantes.
A Figura 3 representa um fluxograma que ilustra o processamento do sistema de agregação de presença, de acordo com algumas modalidades. O sistema de agregação de presença monitora o nível de condição dos pacotes para alterações junto às condições dos editores. Quando uma alteração numa condição de um editor é detectada, o sistema, no bloco 302, determina uma condição de máquina agregada do editor e divulga a condição de máquina agregada no pacote de condição do editor. No bloco 304, o sistema determina uma disponibilidade agregada do editor. No bloco 306, o sistema determina a atividade corrente do editor. No bloco 308, o sistema divulga a disponibilidade agregada e a atividade corrente na forma de condição agregada do editor no pacote de condição do editor e em outros paco- tes do editor que tenham sido designados como sendo apropriados para a divulgação da condição agregada. O editor pode designar os pacotes que sejam apropriados para a divul- gação da condição agregada.
Um especialista na área irá apreciar que por este e outros processos e métodos descritos no presente relatório, as funções realizadas nos processos e métodos podem ser implementadas em uma ordem diferente. Além do mais, as etapas salientadas são na forma somente de exemplo, com algumas etapas podendo ser opcionais, combinadas a fornece- rem menos etapas, ou expandidas em etapas adicionais sem detrimento da essência da invenção.
A Figura 4 representa um fluxograma que ilustra o processamento do módulo de agregação na determinação de uma condição de máquina agregada, de acordo com algu- mas modalidades. O módulo de agregação processa as divulgações de condição de máqui- na em um pacote de condição de editor e notifica os pontos finais de linha do editor da con- dição de máquina agregada simples para a máquina mais ativa do editor. No bloco 402, o módulo de agregação seleciona a condição de máquina mais ativa (ou seja, a divulgação de condição de máquina apresentando o valor de disponibilidade mais baixo). No bloco 404, o módulo de agregação verifica no sentido de determinar se ocorrem múltiplas condições de máquina mais ativa. Se existe mais de uma condição de máquina mais ativa, então, no blo- co 404, o módulo de agregação seleciona a condição de máquina ativa mais recentemente divulgada. No bloco 408, o módulo de agregação retorna a condição de máquina mais ativa.
Em algumas modalidades, o módulo de agregação identifica a máquina que divulga a condi- ção de máquina mais ativa, e retorna uma indicação desta máquina (ou seja, a máquina mais ativa). Caso duas máquinas (ou seja, os respectivos pontos finais de linha da máquina mais ativa) venham a divulgar a mesma condição de máquina que foi determinada como sendo a condição de máquina mais ativa, o módulo de agregação identifica como a máquina mais ativa, a máquina que mais recentemente comunicou a condição de máquina mais ati- va. Por exemplo, caso uma Máquina A tenha divulgado uma condição de máquina Ativa às uma hora da tarde, e uma Máquina B divulgado uma condição de máquina Ativa as uma e meia da tarde, o módulo de agregação identifica a Máquina B como a mais ativa.
A figura 5 representa um fluxograma que ilustra o processamento do módulo de a- gregação na determinação de uma disponibilidade agregada, de acordo com algumas mo- dalidades. No bloco 502, o módulo de agregação determina um conjunto válido de condi- ções a partir das quais gera-se uma disponibilidade agregada. O conjunto válido de condi- ções pode incluir a condição de máquina mais ativa e qualquer condição de usuário, condi- ções de fone, condições de calendário, condições de conferência, e divulgações de condi- ção genérica no pacote de condições do editor. No bloco 504, o módulo de agregação verifi- ca no sentido de determinar se uma condição de usuário foi divulgada. Caso o módulo de agregação determine que a divulgação de condição de usuário encontra-se presente no pa- cote de condições, então, no bloco 506, o módulo de agregação remove as condições que são mais antigas do que a condição de usuário a partir do conjunto válido de condições. Por exemplo, o módulo de agregação identifica as condições no conjunto válido de condições que apresentem horários de divulgação que sejam anteriores ao horário de divulgação da condição de usuário, e remove essas condições anteriores a partir do conjunto válido de condições. Caso, no bloco 504, o módulo de agregação determine que uma condição de usuário não foi divulgada, ou, posteriormente a remoção do conjunto válido de condições, que as condições sejam mais antigas do que a condição de usuário divulgada no bloco 506, o módulo de agregação, no bloco 508, seleciona como a disponibilidade agregada, a condi- ção menos disponível (ou seja, a condição apresentando o valor da mais alta disponibilida- de) a partir do conjunto válido de condições. No bloco 510, o módulo de agregação retorna a disponibilidade agregada.
A Figura 6 representa um fluxograma que ilustra o processamento do módulo de agregação na determinação de uma atividade corrente, de acordo com algumas modalida- des. No bloco 602, o módulo de agregação determina um conjunto válido de condições pe- las quais se determina a atividade corrente de um editor. O conjunto válido de condições pode incluir a condição de máquina mais ativa e qualquer condição de usuário, condições de fone, condições de calendário, condições de conferência, e divulgações de condição genéri- ca no pacote de condição do editor. No bloco 604, o módulo de agregação remove a partir do conjunto válido de condições, as condições que não apresentam uma atividade compro- missada específica. No bloco 606, o módulo de agregação verifica no sentido de determinar se o conjunto válido de condições se encontra vazio. Caso o conjunto válido de condições não esteja vazio, então, no bloco 608, o módulo de agregação seleciona a atividade a partir da condição menos disponível na forma de atividade corrente. No bloco 610, o módulo de agregação retorna a atividade corrente. De outro modo, caso o módulo de agregação de- termine que o conjunto válido de condições esteja vazio (bloco 6060), então, no bloco 612, o módulo de agregação retorna uma indicação de ausência de atividade.
A partir do descrito, será apreciado que as modalidades específicas do sistema de agregação de presença foram descritas no presente relatório para finalidades ilustrativas, mas várias modificações podem ser feitas sem desvio do espírito e escopo da invenção. Por exemplo, um especialista na área irá observar que um editor pode divulgar a informação de presença diretamente para um ou mais dos pacotes do editor. Em resposta a tal divulgação, o sistema de agregação de presença pode notificar aos assinantes que tenham feito assina- tura junto a estes pacotes, da informação de presença divulgada pelo editor. Como outro exemplo, um especialista na área irá apreciar que uma divulgação pode apresentar um tipo de expiração que indica a condição ou condições sob as quais se encerra a divulgação. Por exemplo, o tipo de expiração pode indicar que uma divulgação está para ser encerrada após o transcorrer de um tempo, após o editor se desconectar de todos os seus pontos finais de linha do editor, ou quando o editor não se encontrar mais fazendo uso de qualquer de suas máquinas, etc. Consequentemente, embora a matéria em questão tenha sido descrita para uma linguagem específica junto à características estruturais e/ou atos metodológicos, deve- se compreender que a matéria em questão definida nas reivindicações apensas não se en- contra necessariamente limitada a essas características ou atos específicos descritos ante- riormente. Ao contrário, as características ou atos específicos descritos anteriormente são descritos como formas de exemplo da implementação das reivindicações.

Claims (20)

1. Método em um sistema servidor para agregação de presença através de múlti- plos pontos finais de linha, CARACTERIZADO pelo fato do método compreender: fornecimento de um conjunto de divulgações de condição de presença para um edi- tor (204), cada divulgação de condição de presença apresentando um valor de disponibili- dade e uma atividade; e mediante detecção de uma mudança na condição do editor, gerar uma condição agregada do editor a partir do conjunto de divulgações de condição de presença (304, 306); e divulgação da condição agregada do editor (308).
2. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que a divulgação da condição de presença compreende uma divulgação de condição de usuário.
3. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que a divulgação de condição de presença compreende de uma divulgação de condição de má- quina.
4. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato da divul- gação de condição de presença compreender uma divulgação de condição de fone.
5. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato da divul- gação de condição de presença compreender de uma divulgação de condição de calendá- rio.
6. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que a divulgação de condição de presença compreender de uma divulgação de condição de confe- rência.
7. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato da condi- ção agregada ser divulgada para cada um dos pontos finais de linha do editor.
8. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato da condi- ção agregada ser divulgada para cada assinante quanto a disponibilidade agregada do edi- tor.
9. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de com- preender ainda: mediante detecção da mudança da condição do editor, determinação de uma condição de máquina agregada; e divulgação da condição de máquina agregada (302).
10. Método, de acordo com a reivindicação 9, CARACTERIZADO pelo fato da con- dição de máquina agregada ser divulgada para cada um dos pontos finais de linha do editor.
11. Método, de acordo com a reivindicação 9, CARACTERIZADO pelo fato de compreender: identificação da máquina mais ativa do editor (402); e divulgação de uma indicação da máquina mais ativa do editor.
12. Método, de acordo com a reivindicação 11, CARACTERIZADO pelo fato da in- dicação da máquina mais ativa do editor ser divulgada para cada um dos pontos finais de linha do editor.
13. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de compreender ainda: mediante detecção da mudança na condição do editor, determinação de uma atividade corrente do editor a partir do conjunto de dívulga- ções da condição de presença (306); e divulgação da atividade presente do editor (308).
14. Método, de acordo com a reivindicação 13, CARACTERIZADO pelo fato da ati- vidade presente compreender um texto de falta de êxito que representa a condição agrega- da do editor.
15. Método, de acordo com a reivindicação 13, CARACTERIZADO pelo fato da ati- vidade presente compreender de um texto de praxe incluído numa divulgação de condição de presença.
16. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de compreender ainda: mediante detecção da mudança na condição do editor, determinação de uma disponibilidade agregada do editor a partir do conjunto de di- vulgações da condição de presença (304); e divulgação da disponibilidade agregada do editor (308).
17. Mídia fixa contendo instruções para facilitação junto a um sistema servidor de agregação da presença para múltiplos pontos finais de linha, CARACTERIZADO pelo méto- do compreender: fornecimento de um conjunto de divulgações de condição de presença para um edi- tor (204), cada divulgação de condição de presença apresentando um valor de disponibili- dade e uma atividade; assinatura de assinantes para recebimento das notificações da condição agregada do editor; e mediante detecção de uma mudança na condição do editor, geração de uma condição agregada do editor a partir do conjunto de divulgações de condição de presença (304,306); envio de uma notificação da condição agregada do editor para cada um dos pontos finais de linha (308); e envio de uma notificação da condição agregada para cada assinante da condição agregada do editor (308).
18. Mídia fixa, de acordo com a reivindicação 17, CARACTERIZADA pelo fato da mudança na condição do editor resultar da divulgação da condição de presença através de um ponto final de linha do editor.
19. Sistema para agregação de presença através dos múltiplos pontos finais de li- nha, CARACTERIZADO pelo fato do sistema compreender: um componente que recebe a partir das divulgações de condição de presença dos pontos finais de linha para os editores (108); e um componente que monitora as divulgações de condição de presença para detec- tar uma mudança numa condição de um editor (122), e mediante a detecção de uma mu- dança na condição de um editor, gerar uma condição agregada do editor a partir do conjunto de divulgações da con- dição de presença; e divulgar a condição agregada do editor.
20. Sistema, de acordo com a reivindicação 19, CARACTERIZADO pelo fato da di- vulgação da condição de presença ser recebida a partir de um ponto final de linha do editor através de uma rede de trabalho.
BRPI0711812-0A 2006-05-23 2007-01-29 agregação da presença do usuário junto a um servidor BRPI0711812A2 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/419,947 2006-05-23
US11/419,947 US9241038B2 (en) 2006-05-23 2006-05-23 User presence aggregation at a server
PCT/US2007/002393 WO2007136430A1 (en) 2006-05-23 2007-01-29 User presence aggregation at a server

Publications (1)

Publication Number Publication Date
BRPI0711812A2 true BRPI0711812A2 (pt) 2011-12-06

Family

ID=38723603

Family Applications (1)

Application Number Title Priority Date Filing Date
BRPI0711812-0A BRPI0711812A2 (pt) 2006-05-23 2007-01-29 agregação da presença do usuário junto a um servidor

Country Status (8)

Country Link
US (4) US9241038B2 (pt)
EP (1) EP2025099B1 (pt)
KR (1) KR101319779B1 (pt)
CN (1) CN101455033B (pt)
BR (1) BRPI0711812A2 (pt)
CA (1) CA2649346A1 (pt)
RU (1) RU2436246C2 (pt)
WO (1) WO2007136430A1 (pt)

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7945612B2 (en) * 2006-03-28 2011-05-17 Microsoft Corporation Aggregating user presence across multiple endpoints
US20070239869A1 (en) * 2006-03-28 2007-10-11 Microsoft Corporation User interface for user presence aggregated across multiple endpoints
US9241038B2 (en) * 2006-05-23 2016-01-19 Microsoft Technology Licensing, Llc User presence aggregation at a server
US20080133742A1 (en) * 2006-11-30 2008-06-05 Oz Communications Inc. Presence model for presence service and method of providing presence information
US8767944B1 (en) 2007-01-03 2014-07-01 Avaya Inc. Mechanism for status and control communication over SIP using CODEC tunneling
GB0706074D0 (en) 2007-03-28 2007-05-09 Skype Ltd Detection of communication states
JP5467866B2 (ja) * 2007-05-08 2014-04-09 富士通株式会社 情報通信システム、情報通信方法、情報通信装置及びコンピュータプログラム
US20080285736A1 (en) 2007-05-16 2008-11-20 Unison Technolgies Llc Systems and methods for providing unified collaboration systems with conditional communication handling
US20080285540A1 (en) * 2007-05-18 2008-11-20 International Business Machines Corporation Using presence proxies to constrain local presence information to a sub-network while using a presence server external to the sub-network to handle other presence information
US8291067B2 (en) * 2007-06-29 2012-10-16 Microsoft Corporation Providing access to presence information using multiple presence objects
US20090049190A1 (en) * 2007-08-16 2009-02-19 Yahoo!, Inc. Multiple points of presence in real time communications
US9697501B2 (en) * 2007-09-25 2017-07-04 Microsoft Technology Licensing, Llc Interruptibility management via scheduling application
WO2009067780A1 (en) * 2007-11-27 2009-06-04 Nokia Corporation Presence model for presence service and method of providing presence information
US20090327300A1 (en) * 2008-06-26 2009-12-31 Microsoft Corporation Manifest-based enhanced presence publishing
US8108777B2 (en) 2008-08-11 2012-01-31 Microsoft Corporation Sections of a presentation having user-definable properties
US8116237B2 (en) * 2008-09-26 2012-02-14 Avaya Inc. Clearing house for publish/subscribe of status data from distributed telecommunications systems
US9014736B2 (en) * 2008-11-24 2015-04-21 Plantronics, Inc. Portable network device for the discovery of nearby devices and services
US10127524B2 (en) 2009-05-26 2018-11-13 Microsoft Technology Licensing, Llc Shared collaboration canvas
US20110221607A1 (en) * 2010-03-15 2011-09-15 Microsoft Corporation Dynamic Device Adaptation Based on Proximity to Other Devices
US8799377B2 (en) * 2010-12-14 2014-08-05 At&T Intellectual Property Ii, L.P. Method and apparatus for mobile presence aggregation
US9118612B2 (en) 2010-12-15 2015-08-25 Microsoft Technology Licensing, Llc Meeting-specific state indicators
US9383888B2 (en) 2010-12-15 2016-07-05 Microsoft Technology Licensing, Llc Optimized joint document review
US9864612B2 (en) 2010-12-23 2018-01-09 Microsoft Technology Licensing, Llc Techniques to customize a user interface for different displays
US20120297305A1 (en) * 2011-05-17 2012-11-22 Microsoft Corporation Presenting or sharing state in presence
US9413556B2 (en) * 2011-06-03 2016-08-09 Apple Inc. Unified account list
US9544158B2 (en) 2011-10-05 2017-01-10 Microsoft Technology Licensing, Llc Workspace collaboration via a wall-type computing device
US8682973B2 (en) 2011-10-05 2014-03-25 Microsoft Corporation Multi-user and multi-device collaboration
US9996241B2 (en) 2011-10-11 2018-06-12 Microsoft Technology Licensing, Llc Interactive visualization of multiple software functionality content items
US10198485B2 (en) 2011-10-13 2019-02-05 Microsoft Technology Licensing, Llc Authoring of data visualizations and maps
US10198716B2 (en) * 2011-11-11 2019-02-05 Microsoft Technology Licensing, Llc User availability awareness
US20130346517A1 (en) * 2012-06-26 2013-12-26 Magnet Systems, Inc. Personal mode contextual presence
US10133720B2 (en) * 2013-06-15 2018-11-20 Microsoft Technology Licensing, Llc Showing presence of multiple authors in a spreadsheet
WO2014210422A1 (en) 2013-06-28 2014-12-31 Huawei Technologies Co., Ltd. Presence delay and state computation for composite services
US10044774B1 (en) 2014-03-31 2018-08-07 Sonus Networks, Inc. Methods and apparatus for aggregating and distributing presence information
US9398107B1 (en) 2014-03-31 2016-07-19 Sonus Networks, Inc. Methods and apparatus for aggregating and distributing contact and presence information
CN104869609A (zh) 2015-04-27 2015-08-26 小米科技有限责任公司 信息提供方法和装置
CN106209567B (zh) * 2015-04-29 2019-09-17 阿里巴巴集团控股有限公司 提供用户状态信息的方法及装置
US10680980B2 (en) * 2016-05-10 2020-06-09 Cisco Technology, Inc. Interactive contextual emojis
US10616153B2 (en) * 2016-12-30 2020-04-07 Logmein, Inc. Real-time communications system with intelligent presence indication

Family Cites Families (94)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4471348A (en) 1982-01-15 1984-09-11 The Boeing Company Method and apparatus for simultaneously displaying data indicative of activity levels at multiple digital test points in pseudo real time and historical digital format, and display produced thereby
US6259446B1 (en) 1992-12-23 2001-07-10 Object Technology Licensing Corporation Menu state system
US5964839A (en) 1996-03-29 1999-10-12 At&T Corp System and method for monitoring information flow and performing data collection
US6304893B1 (en) 1996-07-01 2001-10-16 Sun Microsystems, Inc. Object-oriented system, method and article of manufacture for a client-server event driven message framework in an interprise computing framework system
JP4044169B2 (ja) 1997-02-26 2008-02-06 株式会社アマダ 工程の流れに沿った情報設定画面の表示方法及びその機能を有するマルチウィンドウ方式のnc装置
US6539347B1 (en) 1997-10-31 2003-03-25 Entelos, Inc. Method of generating a display for a dynamic simulation model utilizing node and link representations
US6148328A (en) 1998-01-29 2000-11-14 International Business Machines Corp. Method and system for signaling presence of users in a networked environment
US6189008B1 (en) 1998-04-03 2001-02-13 Intertainer, Inc. Dynamic digital asset management
US6012030A (en) 1998-04-21 2000-01-04 Nortel Networks Corporation Management of speech and audio prompts in multimodal interfaces
US6301609B1 (en) 1999-07-07 2001-10-09 Lucent Technologies Inc. Assignable associate priorities for user-definable instant messaging buddy groups
JP2001060155A (ja) 1999-08-20 2001-03-06 Fujitsu Ltd メッセージ処理装置
US6527641B1 (en) 1999-09-24 2003-03-04 Nokia Corporation System for profiling mobile station activity in a predictive command wireless game system
US6671714B1 (en) 1999-11-23 2003-12-30 Frank Michael Weyer Method, apparatus and business system for online communications with online and offline recipients
US20020065894A1 (en) 1999-12-03 2002-05-30 Dalal Siddhartha R. Local presence state and user-controlled presence and message forwarding in unified instant messaging
US7359938B1 (en) 1999-12-14 2008-04-15 Nortel Networks Limited System indicating the presence of an individual or group of individuals
US6678719B1 (en) 1999-12-20 2004-01-13 Mediaone Group, Inc. Virtual workplace intercommunication tool
US6697840B1 (en) 2000-02-29 2004-02-24 Lucent Technologies Inc. Presence awareness in collaborative systems
US6791583B2 (en) 2000-03-09 2004-09-14 Sun Microsystems, Inc. System and method for providing spatially distributed device interaction
US6874125B1 (en) 2000-05-03 2005-03-29 Microsoft Corporation Method for providing feedback on windows, messages and dialog boxes
KR100804908B1 (ko) 2000-05-30 2008-02-20 코키 우치야마 지식 서비스를 제공하는 분산 모니터링 시스템
US20030009530A1 (en) 2000-11-08 2003-01-09 Laurent Philonenko Instant message presence protocol for facilitating communication center activity
US6774921B1 (en) 2000-11-17 2004-08-10 Unisys Corporation Method and apparatus for dynamically saving/restoring the properties of controls in a screen dialog
EP1368740A1 (en) * 2001-02-05 2003-12-10 Personity Inc. A method and device for displaying contact information in a presence and availability management system
EP1255189B1 (en) 2001-05-04 2008-10-08 Microsoft Corporation Interface control
US7433922B2 (en) 2001-05-11 2008-10-07 Varia Llc Method and system for collecting and displaying aggregate presence information for mobile media players
US20020186257A1 (en) 2001-06-08 2002-12-12 Cadiz Jonathan J. System and process for providing dynamic communication access and information awareness in an interactive peripheral display
US7844055B2 (en) * 2001-06-26 2010-11-30 Link Us All, Llc Detecting and transporting dynamic presence information over a wireless and wireline communications network
US20030208541A1 (en) 2001-11-10 2003-11-06 Jeff Musa Handheld wireless conferencing technology
US6735287B2 (en) 2001-11-16 2004-05-11 Sbc Technology Resources, Inc. Method and system for multimodal presence detection
US6845097B2 (en) * 2001-11-21 2005-01-18 Ixi Mobile (Israel) Ltd. Device, system, method and computer readable medium for pairing of devices in a short distance wireless network
US20030217096A1 (en) * 2001-12-14 2003-11-20 Mckelvie Samuel J. Agent based application using data synchronization
US6658095B1 (en) 2002-03-19 2003-12-02 Nortel Networks Limited Customized presence information delivery
US20030184594A1 (en) 2002-03-25 2003-10-02 John Ellenby Apparatus and methods for interfacing with remote addressing systems
US7035923B1 (en) 2002-04-10 2006-04-25 Nortel Networks Limited Presence information specifying communication preferences
US7552204B2 (en) 2002-05-15 2009-06-23 Microsoft Corporation Method and system for supporting the communication of presence information among computing devices of a network
US20030217098A1 (en) * 2002-05-15 2003-11-20 Microsoft Corporation Method and system for supporting the communication of presence information regarding one or more telephony devices
US20030217142A1 (en) 2002-05-15 2003-11-20 Microsoft Corporation Method and system for supporting the communication of presence information regarding one or more telephony devices
JP3980421B2 (ja) * 2002-06-27 2007-09-26 富士通株式会社 プレゼンス管理方法及び装置
GB0215620D0 (en) * 2002-07-05 2002-08-14 Nokia Corp Updating presence information
US20040010573A1 (en) * 2002-07-10 2004-01-15 Philippe Debaty Web presence for physical entities
US6757722B2 (en) 2002-07-16 2004-06-29 Nokia Corporation System and method for providing partial presence notifications
US7234117B2 (en) * 2002-08-28 2007-06-19 Microsoft Corporation System and method for shared integrated online social interaction
US7844662B2 (en) 2002-10-17 2010-11-30 At&T Intellectual Property Ii, L.P. Merging instant messaging (IM) chat sessions
US20040059781A1 (en) 2002-09-19 2004-03-25 Nortel Networks Limited Dynamic presence indicators
US7716289B2 (en) * 2002-10-17 2010-05-11 At&T Intellectual Property I, L.P. Transferring instant messaging (IM) messages
US20040088649A1 (en) 2002-10-31 2004-05-06 International Business Machines Corporation System and method for finding the recency of an information aggregate
US7899862B2 (en) * 2002-11-18 2011-03-01 Aol Inc. Dynamic identification of other users to an online user
US20040122901A1 (en) * 2002-12-20 2004-06-24 Nortel Networks Limited Providing computer presence information to an integrated presence system
US20040128391A1 (en) * 2002-12-31 2004-07-01 Robert Patzer Method and system for managing a validity period in association with a presence attribute
US7853563B2 (en) * 2005-08-01 2010-12-14 Seven Networks, Inc. Universal data aggregation
US7917468B2 (en) 2005-08-01 2011-03-29 Seven Networks, Inc. Linking of personal information management data
US7263545B2 (en) 2003-02-14 2007-08-28 Convoq, Inc. System and method for immediate and delayed real-time communication activities using availability data from and communications through an external instant messaging system
US8204938B2 (en) 2003-02-14 2012-06-19 Devereux Research Ab Llc System and method for immediate and delayed real-time communication activities using availability data from and communications through an external instant messaging system
US7149288B2 (en) * 2003-02-14 2006-12-12 Convoq, Inc. Rules based real-time communication system
US7240228B2 (en) 2003-05-05 2007-07-03 Microsoft Corporation Method and system for standby auxiliary processing of information for a computing device
US6970547B2 (en) 2003-05-12 2005-11-29 Onstate Communications Corporation Universal state-aware communications
US20040230594A1 (en) 2003-05-15 2004-11-18 Flam Ran J. Reject activities in a process control system
NO318975B1 (no) 2003-06-20 2005-05-30 Tandberg Telecom As System og fremgangsmate for oppsett av moter og konferanser
US20050044143A1 (en) 2003-08-19 2005-02-24 Logitech Europe S.A. Instant messenger presence and identity management
US7228506B2 (en) 2003-09-25 2007-06-05 Microsoft Corporation System and method for providing an icon overlay to indicate that processing is occurring
US20050068167A1 (en) * 2003-09-26 2005-03-31 Boyer David G. Programmable presence proxy for determining a presence status of a user
US7499974B2 (en) * 2003-09-30 2009-03-03 International Business Machines Corporation Instant message user management
US20050091272A1 (en) * 2003-10-23 2005-04-28 Smith Walter R. Contact management
US7461126B2 (en) 2003-10-30 2008-12-02 Radvision Ltd. System and method for distributed multipoint conferencing with automatic endpoint address detection and dynamic endpoint-server allocation
JP4118800B2 (ja) * 2003-12-26 2008-07-16 ソフトバンクモバイル株式会社 プレゼンス表示システム及びゲートウエイ装置
JP4214941B2 (ja) * 2004-04-09 2009-01-28 日本電気株式会社 プレゼンス情報提供システム、その方法およびサーバ
US20050232184A1 (en) * 2004-04-15 2005-10-20 Utstarcom, Incorporated Network presence updating apparatus and method
US20060004837A1 (en) 2004-06-30 2006-01-05 Genovker Victoria V Advanced switching peer-to-peer protocol
US7444379B2 (en) 2004-06-30 2008-10-28 International Business Machines Corporation Method for automatically setting chat status based on user activity in local environment
US7418497B2 (en) 2004-07-15 2008-08-26 International Business Machines Corporation Automatically infering and updating an availability status of a user
US7376227B2 (en) 2004-08-03 2008-05-20 Genesys Telecommunications Laboratories, Inc. Method and apparatus for integrating agent status between a customer relations management system and a multiple channel communications center
US7836126B2 (en) 2004-08-04 2010-11-16 Sap Ag Business presence system and method
US20060069686A1 (en) * 2004-09-30 2006-03-30 Siemens Information And Communication Networks, Inc. System and method for predicting availability
US20070198696A1 (en) * 2004-10-06 2007-08-23 Morris Robert P System and method for utilizing contact information, presence information and device activity
US20070198725A1 (en) * 2004-10-06 2007-08-23 Morris Robert P System and method for utilizing contact information, presence information and device activity
JP4631401B2 (ja) * 2004-11-10 2011-02-16 日本電気株式会社 プレゼンス更新システム及びその方法並びにそれに用いる移動通信端末
US7853696B2 (en) * 2004-11-19 2010-12-14 Cisco Technology, Inc. System and method for providing an eCamp feature in a session initiation protocol (SIP) environment
US8176086B2 (en) * 2004-11-30 2012-05-08 Avaya Inc. Methods and apparatus for determining a presence of a user
US20060133586A1 (en) * 2004-12-08 2006-06-22 Ntt Docomo, Inc. Information notification system and information notification method
US7466810B1 (en) 2004-12-20 2008-12-16 Neltura Technology, Inc. Distributed system for sharing of communication service resources between devices and users
US20060190600A1 (en) * 2005-02-18 2006-08-24 Siemens Communications, Inc. Group based presence availability management
CA2506665A1 (en) * 2005-05-06 2006-11-06 Iotum Inc. Method of and system for telecommunication management
US8356011B2 (en) * 2005-07-26 2013-01-15 Microsoft Corporation Organizing presence information into collections of publications
US7734710B2 (en) * 2005-09-22 2010-06-08 Avaya Inc. Presence-based hybrid peer-to-peer communications
US8078578B2 (en) * 2005-10-14 2011-12-13 Cisco Technology, Inc. Sharing of presence-based time-zone information
JP4616758B2 (ja) * 2005-11-30 2011-01-19 富士通株式会社 プレゼンス管理方法及びプレゼンス管理装置
US20070130323A1 (en) * 2005-12-02 2007-06-07 Landsman Richard A Implied presence detection in a communication system
US7907955B2 (en) * 2006-02-07 2011-03-15 Siemens Enterprise Communications, Inc. Presence system with proximity presence status
US7945612B2 (en) 2006-03-28 2011-05-17 Microsoft Corporation Aggregating user presence across multiple endpoints
US20070239869A1 (en) 2006-03-28 2007-10-11 Microsoft Corporation User interface for user presence aggregated across multiple endpoints
US20070233852A1 (en) * 2006-03-31 2007-10-04 Jack Jachner Presence logging in calendar systems
US8108345B2 (en) * 2006-03-31 2012-01-31 Microsoft Corporation Managing rich presence collections in a single request
US8234559B2 (en) * 2006-03-31 2012-07-31 Microsoft Corporation Managing rich presence collections
US9241038B2 (en) * 2006-05-23 2016-01-19 Microsoft Technology Licensing, Llc User presence aggregation at a server

Also Published As

Publication number Publication date
CN101455033B (zh) 2013-08-21
US10686901B2 (en) 2020-06-16
CN101455033A (zh) 2009-06-10
EP2025099A4 (en) 2014-08-20
CA2649346A1 (en) 2007-11-29
EP2025099A1 (en) 2009-02-18
US20160156727A1 (en) 2016-06-02
RU2436246C2 (ru) 2011-12-10
RU2008146059A (ru) 2010-05-27
WO2007136430A1 (en) 2007-11-29
US9942338B2 (en) 2018-04-10
US9241038B2 (en) 2016-01-19
US20070276909A1 (en) 2007-11-29
KR101319779B1 (ko) 2013-10-17
US20070276937A1 (en) 2007-11-29
US20180227378A1 (en) 2018-08-09
KR20090018917A (ko) 2009-02-24
EP2025099B1 (en) 2017-10-25

Similar Documents

Publication Publication Date Title
BRPI0711812A2 (pt) agregação da presença do usuário junto a um servidor
US7836088B2 (en) Relationship-based processing
US7801954B2 (en) Method and system for providing expanded presence information when a user is offline
US8700690B2 (en) Aggregating user presence across multiple endpoints
US9686368B2 (en) Aggregating endpoint capabilities for a user
CN102546468B (zh) 用于在用户变为通信可及时提供通知的系统和方法
US8190135B2 (en) Attribute and location based entity presentation in presence based communication systems
US20070239869A1 (en) User interface for user presence aggregated across multiple endpoints
US20060112177A1 (en) Method and system for controlling access to presence information on a peer-to-peer basis
US20100175000A1 (en) Dynamically creating and managing alternate contacts list
US20060190117A1 (en) Method and apparatus for automatically determining a presence status
US8321514B2 (en) Sharing email
KR20080106557A (ko) 프레즌스 서버로부터 발행된 프레즌스 정보를 만료시키는 시스템 및 그 방법을 수행하는 명령어들을 포함하는 컴퓨터판독가능 매체, 프레즌스 서버에 프레즌스 정보를 발행하는 시스템
US20030009566A1 (en) System and method for providing access and utilization of context information
US8126443B2 (en) Auxiliary output device
US8488762B2 (en) Program-specific presence
US20080068206A1 (en) Extended presence information and interest flag
US20240073054A1 (en) User-Aware Communication Feature Identification
US20240073174A1 (en) Selective Multi-Modal And Channel Alerting Of Missed Communications
US11922355B2 (en) Sentiment-based participation requests for contact center engagements

Legal Events

Date Code Title Description
B08F Application dismissed because of non-payment of annual fees [chapter 8.6 patent gazette]

Free format text: REFERENTE A 8A ANUIDADE.

B08K Patent lapsed as no evidence of payment of the annual fee has been furnished to inpi [chapter 8.11 patent gazette]

Free format text: REFERENTE AO DESPACHO 8.6 PUBLICADO NA RPI 2291 DE 02/12/2014.