Currently Browsing

Posts Tagged ‘ twitter ’

MetroTwit Show

MetroTwit Show is a Silverlight 4 out-of-browser application to take advantage of the widespread adoption of Silverlight on both Windows and Macs. Like MetroTwit, it is inspired by Microsoft’s Metro design language and prides itself on beautiful animations and elegant typography.

As a v1 release, the feature set is limited to a simple read-only experience to following searches and trends. We have plans to add many more layers of interactivity and functionality.

Podem fazer o download em http://www.metrotwit.com/show/

Twitter lança plataforma @anywhere

O Twitter lançou uma nova plataforma, designada por @anywhere, que permite a integração do serviço no nosso site de uma forma rápida e simples.

A @anywhere possui funcionalidades como:

  • Auto-linkification of Twitter usernames
  • Hovercards
  • Follow Buttons
  • Tweet Box
  • User login & signup

Segue um exemplo rápido de como mostrar a informação de um utilizador quando se passa o rato em cima:

<!-- colocar entre <head></head> -->
<script src="http://platform.twitter.com/anywhere.js?id=YOUR_API_KEY&v=1" type="text/javascript"></script>
<!-- colocar entre <body></body> -->
<script type="text/javascript">
  twttr.anywhere(function (T) {
    T.hovercards();
  });

</script>

Para terem a vossa API Key, precisam de registar a vossa aplicação e só depois estão prontos para utilizar a plataforma.

Para ver o que o código acima faz, passem o rato sobre o meu utilizador: @TiagoSalgado

A documentação a explicar o funcionamente da plataforma, e com exemplos de como integra-la no nosso site, pode ser encontrada aqui.

Twitter – actualizar IP e receber alerta por SMS

Lembrei-me de andar a brincar um bocadinho com a API do Twitter e nada melhor que um exemplo prático para testar :)

O que o código abaixo faz é o seguinte:

1º – Usa o site http://checkip.dyndns.org/ para extrair o IP público actual.

2º – Saca o arquivo de estados da conta do Twitter e vai buscar o último IP (ultimo estado)

3º – Actualiza o estado da conta do Twitter com o novo IP no caso de ser diferente do devolvido no ponto 2.

        '###############################################
        ' update your ip address to a twitter account
        '###############################################

        Dim c As CredentialCache = New CredentialCache
        Dim w As WebClient = New WebClient
        Dim newIP As String = ""
        Dim oldIP As String = ""

        Try
            ' get external ip address
            newIP = w.DownloadString("http://checkip.dyndns.org/")
            Dim regex As New Regex("<[^>]*>")
            newIP = regex.Replace(newIP, "")
            newIP = newIP.Substring(newIP.IndexOf(":") + 1).Trim

            'carrega as credenciais
            c.Add(New Uri("http://twitter.com"), "Basic",
New NetworkCredential("NomeUtilizador", "Password"))
            w.Credentials = c

            ' load archive to get last ip address
            Dim archive As String =
w.DownloadString("http://twitter.com/account/archive.xml")
            Dim _archive As New XmlDocument
            _archive.LoadXml(archive)

            'get ip address from first childnode (last update node)
            oldIP = _archive.SelectSingleNode("statuses").
FirstChild("text").InnerText.Trim

            ' compare new and old ip address and update if <>
            If Not String.Equals(newIP, oldIP) Then
                ' prepare postvar
                Dim pd As String = "status=" + newIP.ToString
                Dim pdArray As Byte() = Encoding.ASCII.GetBytes(pd)
                Dim responseArray As Byte() =
w.UploadData("http://twitter.com/statuses/update.xml", "POST", pdArray)

                Dim _status As New XmlDocument
                'load into xmldocument the http response
                _status.LoadXml(Encoding.ASCII.GetString(responseArray))
                'update successful ?
                If String.Equals(_status.SelectSingleNode("status/text").
InnerText.Trim, newIP) Then
                    ' yeah o/ i've done it !!!
                End If
            Else
                ' no update necessary ...
            End If

        Catch ex As Exception
            Debug.Print(ex.ToString)
        End Try

Para isto funcionar, cria uma conta no Twitter só para ter os IPs actualizados e depois na conta principal vai a esta conta e faz o Follow ( activar a opção “Device Updates” e associar o nº de telemovel à conta ).

Podem fazer o download da solução com este código na página de projectos.

Blogroll