  We present an algorithm that computes Bowditch's canonical JSJ decomposition
of a given one-ended hyperbolic group over its virtually cyclic subgroups. The
algorithm works by identifying topological features in the boundary of the
group. As a corollary we also show how to compute the JSJ decomposition of such
a group over its virtually cyclic subgroups with infinite centre. We also give
a new algorithm that determines whether or not a given one-ended hyperbolic
group is virtually fuchsian. Our approach uses only the geometry of large balls
in the Cayley graph and avoids Makanin's algorithm.
